JSL과 함께 수식에 사용할 특정 행 값 사용오래 전에 VB에서 배웠던 것을 해보고 싶지만 JMP 스크립팅 언어에 어려움을 겪고 있습니다. 저는 JMP를 처음 사용합니다.
수식에서 For 루프를 실행하고 싶지만 셀 배열을 사용하고 싶습니다.
예를 들어 다음과 같이 열을 참조할 수 있다는 것을 알고 있습니다. j = Column ("a");
그런 다음 j[4] = 77 + 2라고 말하면; 열 "a", 행 4에서 값 79를 얻습니다.
그러나 예를 들어 For(i=1,i<=20,i++, 몇 가지 공식 사용 j[i]);
첨부 파일에서 열 B 행 [1]을 열 C의 행 1~5와 함께 사용하고 싶습니다. 그런 다음 열 B의 행 [6]과 열 C의 행 6에서 10까지입니다. 내 목표는 Column-A의 시퀀스를 식별자로 사용하는 것이므로 시퀀스 값이 1일 때마다 이 값을 5번의 후속 사용에 대해 유지합니다. 여기서 Column-D로 들어가는 내용은 내용에 대해 수행된 산술에 따라 달라집니다. 열 B와 C. (예: Column-D=Column-B-Value + Column-C-Value.) 사진에서 내가 의미하는 바를 보려면 첨부 파일을 참조하십시오.
어떤 도움이라도 대단히 감사하겠습니다.
Re: JSL과 함께 수식에 특정 행 값 사용결국 JMP 스크립팅이 작동하는 방식을 알아내는 데 시간이 좀 걸렸습니다. 첨부 파일은 내가 수행한 작업을 보여주며, 이는 저에게 효과적입니다. (예제는 이 토론을 시작하기 위해 사용했던 간단한 예와 다릅니다.)
이런 종류의 문제에 다르게 접근하는 방법에 대한 팁이 있는 사람이 있으면 의견을 말하십시오. 수년 동안 기본 VB 프로그래밍에서 for 루프와 if 조건을 사용했고 JMP를 처음 접했기 때문에 JMP 스크립팅에 접근하는 방법을 더 잘 이해하기 위한 지침이 필요할 수 있습니다.
Re: JSL과 함께 수식에 특정 행 값 사용하기고마워요, 짐!
Re: JSL과 함께 수식에 특정 행 값 사용질문이 있습니까?
Re: JSL과 함께 수식에 특정 행 값 사용지난 30일 평균이 대상에 비해 +1 시그마 이상인 경우 이 스크립트를 사용하여 셀을 노란색으로 색칠하고 있습니다.
을 위한 ( 나 = 1 , 나 <= N행 ( dt ) , 나 ++,
만약에 ( 열 ( dt , "평균 30일" )[ 나 ] > (( 열 ( dt , "표적" )[ 나 ]) + 열 ( dt , "표준" )[ 나 ] ) ,
열 ( dt , "평균 30일" ) << 컬러 셀 ( 9 , { 나 } )
)
) ;
Re: JSL과 함께 수식에 특정 행 값 사용다음 수식은 첨부된 예에서 작동합니다.
targetrow = (Row() - :Name( "Column-A" )) + 1;
:Name( "Column-B" )[targetrow] + :Name( "Column-C" );
수식은 항상 모든 행을 반복하며 Row() 함수는 항상 현재 작업 중인 행을 제공합니다. JMP에서 수식을 사용할 때 주어진 행을 볼 때 어떤 결과가 필요한지 살펴봐야 합니다. VB와는 다른 패러다임
찾고 있는 For 루핑을 수행하는 또 다른 버전이 있습니다.
If( :Name( "Column-A" ) == 5,
For( i = Row() - 4, i <= Row(), i++,
:Name( "Column-D" )[i] = :Name( "Column-B" )[Row() - 4] + :Name( "Column-C" )[i]
)
);
// The last value calculated will be the value for the current row,
// so it needs to be handled as a special case
:Name( "Column-B" )[Row() - 4] + :Name( "Column-C" )[Row()];
마지막 행이 감지될 때까지 모든 행에 대한 모든 처리를 우회한 다음 프로그램 제어 하에 있는 모든 행을 돌아가서 반복할 수 있는 경우 기술적으로 VB 세계를 근사화할 수 있다고 생각합니다.... .그것은 많은 일처럼 보인다
dt=current data table();
If(Row()==N Rows(dt),
<DO whatever="" processing="" you="" want="">
);
<PROCESS for="" the="" current=""></PROCESS></DO>