선택한 행에 대한 이동 평균을 계산하는 방법여러분, 안녕하세요!
표에서 선택한 행을 사용하여 이동 평균을 계산하는 스크립트를 작성하려고 합니다.
무대를 설정하려면:
3단계 프로세스(A, B, C)의 여러 실행(고유 ID)이 있는 데이터 테이블(첨부된 예제)이 있습니다. 각 단계에 대해 보고된 값이 있으며 이러한 값을 합산하여 각 경우에 대한 총 값을 제공합니다. 총계의 이동 평균을 보고하는 열이 필요합니다. 몇 가지 토론을 살펴보았고 이를 수행하는 방법에 대한 몇 가지 좋은 팁을 얻었습니다(예: 각 고유 ID에 대한 이동 평균... 이 예제가 도움이 되었고 수식은 이동 평균(고유 ID)에 있습니다.
제가 하고 싶은 다음 단계는 이 평가에서 실행의 하위 집합만 포함하는 것입니다. 실행은 빨간색으로 강조 표시되고 원하는 결과(이 경우 세 가지 경우의 이동 평균)는 :Desired Result에 있습니다.
평가를 위한 실행 하위 집합을 선택하는 스크립트에 문제가 있습니다.
또한, 저는 JSL에 비교적 새로 입문한 사람이기 때문에 더 깔끔하고 효율적인 방식으로 최종 결과를 얻는 방법에 대한 제안도 환영합니다.
귀하의 도움에 미리 감사드립니다!
크리스
자동화 및 스크립팅기본 데이터 분석 및 모델링데이터 블렌딩 및 정리Re: 선택한 행에 대한 이동 평균을 계산하는 방법그 세 줄은 무엇을 기준으로 선택되었나요?
Re: 선택한 행에 대한 이동 평균을 계산하는 방법자르모,
이 프로세스는 두 가지 다른 설정에서 실행됩니다. 한 설정은 개발용이고 다른 설정은 "공식적인" 용도입니다(이해하시겠죠?).
그리고 그 세 줄은 후자를 나타냅니다. 이동 평균의 경우 개발 실행을 포함하고 싶지 않습니다. 그러나 추적/추세 시트에 모든 데이터를 포함하고 싶습니다. 따라서 모든 설정/운영자 등을 나타내는 "단일 진실의 출처"가 있습니다. 첨부된 시트는 Ask for the JMP 커뮤니티에 도움을 주기 위한 최소한의 정보 집합을 나타냅니다.
저는 수년에 걸쳐 비슷한 데이터 세트를 구축해 왔고, 최근에 JSL로 작업을 시작하여 더 효율적인 작업 스트림을 개발하려고 노력하고 있습니다. 하지만 저는 코딩 배경이 없어서 여전히 가파른 학습 곡선에 있습니다. 이 그룹은 정말 도움이 되었습니다!
크리스
Re: 선택한 행에 대한 이동 평균을 계산하는 방법관심 있는 올바른 행을 선택하는 방법이 궁금합니다. 색상이나 특정 열의 셀을 기준으로 합니까? 행을 수동으로 선택한 다음 이동 평균을 선택한 행에서 계산합니까?
예를 들어, 그룹화 열을 제공한 다음 해당 열을 활용할 수 있습니다.
If(!Is Missing(:Group),
Col Moving Average(As Column("Total (Sum of Stages for each Unique ID)"), 1, :Group),
.
)

계산을 더 간단하게 하기 위해 해당 행의 하위 집합(아마도 연결된 행)을 생성할 수도 있습니다(편집: 이것은 미리 보기에서는 작동하는 것처럼 보이지만 연결된 하위 집합에서는 작동하지 않습니다)
Col Moving Average(As Column("Total (Sum of Stages for each Unique ID)"), 1)

Col 이동 평균(이름, 옵션, ) 가장 혼란스러운 공식 함수 중 하나이므로 읽기에 좋습니다.
Re: 선택한 행에 대한 이동 평균을 계산하는 방법아... 이제 질문을 이해했습니다.
:To Include == Yes인 행을 선택하려고 합니다. 더 나은 방법이 있습니까?
해당 문서를 읽어볼게요...저는 그 함수 때문에 혼란스러웠던 게 분명해요!
크리스
Re: 선택한 행에 대한 이동 평균을 계산하는 방법아.. 그러면 행을 포함하여 열 이동 평균을 계산하고 각 고유 ID의 마지막 행에 대해서만 보고하려는 거군요?

이는 마지막 값만이 아니라 그룹의 모든 값을 사용하여 이동 평균을 계산하고 마지막 줄에 보고한다는 점에 유의하십시오(실제로 무슨 일이 일어나는지 보려면 if 문을 제거하세요)
If(:To Include == "Yes" & Row() == Col Max(Row(), :Unique ID),
Col Moving Average(:"Total (Sum of Stages for each Unique ID)"n, 1, :To Include),
.
)

마지막 행만을 기준으로 계산을 수행할 수도 있지만 계산 속도가 점점 느려지고 읽기가 어려워집니다.
If(:To Include == "Yes" & Row() == Col Max(Row(), :Unique ID),
Col Moving Average(
If(Row() == Col Max(Row(), :Unique ID),
:"Total (Sum of Stages for each Unique ID)"n,
.
),
1,
:To Include
),
.
)
이것을 여러 개의 별도 공식으로 나누면 이해하기가 가장 쉽습니다.
Re: 선택한 행에 대한 이동 평균을 계산하는 방법정말 고맙습니다! 이걸로 놀아보도록 할게요.
C