동일한 항목이 다른 열에 나타날 때 해당 열에 일련 번호(1부터 시작)를 채우는 방법은 무엇입니까?두 개의 열 데이터가 있다고 가정해 보겠습니다. 첫 번째 열 partID, 두 번째 열은 해당 부품의 측정값입니다. 각 부품은 N번 측정되므로 partID 열에는 다음 partID가 나타날 때까지 테이블에 ID가 N번 나타나는 행이 있습니다. 특정 부품에 대한 측정 반복/실행 횟수가 포함된 새 열을 만들고 싶습니다.
따라서 partID 열에 동일한 partID가 나타나는 경우 Runs 열을 1부터 시작하는 일련 번호로 채우고 싶습니다.
따라서 부품 A가 11번 측정되면 실행 열은 1부터 11까지의 행 항목을 가져옵니다. 다음 부분 B는 9번 측정되고 실행 열에는 1부터 9까지의 행 항목이 포함됩니다.
JSL을 통해 이를 어떻게 자동화할 수 있나요?
윈도우Re: 동일한 항목이 다른 열에 나타날 때 해당 열에 일련번호(1부터 시작)를 채우는 방법은 무엇입니까?언급한 대로 partID가 그룹화되어 있으면 작동합니다.
If(
Row() == 1, 1,
Lag( :partID ) == :partID, Lag( :Runs ) + 1,
1
)
Re: 동일한 항목이 다른 열에 나타날 때 해당 열에 일련번호(1부터 시작)를 채우는 방법은 무엇입니까?@mmarchandTSI 솔루션은 훌륭한 솔루션입니다.하지만 평소와 같이 JMP에는 솔루션을 찾는 방법이 여러 가지 있습니다.대체 솔루션은 다음과 같습니다.
Col Cumulative Sum( 1, :partID )
Re: 동일한 항목이 다른 열에 나타날 때 해당 열에 일련번호(1부터 시작)를 채우는 방법은 무엇입니까?값이 1인 Col Cumulative Sum은 현재 JMP 버전에서 작동해야 합니다.
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(10),
Compress File When Saved(1),
New Column("Column 1",
Character,
"Nominal",
Set Values({"A", "A", "A", "A", "B", "B", "C", "C", "C", "D"})
)
);
dt << New Column("Run", Numeric, Ordinal, Formula(
Col Cumulative Sum(1, :Column 1)
));