<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />두 열에 동일한 데이터가 있는 행을 자동으로 선택하는 영구 열 수식을 만들고 싶습니다.그런 다음 이 선택 항목을 사용하여 선택한 행의 한 열에서 최소값을 찾습니다.for 루프와 스크립트를 사용하여 이를 수행할 수 있다는 것을 알고 있습니다. 어쨌든 "일치하는 행 선택" 명령을 열 수식에 포함할 수 있습니까?
잘 이해가 안 되지만 변수의 최소값을 찾는 것 같습니다(예: 키 ) ~에 의해 두 개의 그룹화 열(예: 나이 그리고 나이2 ).
그러면 다음 공식을 사용할 수 있습니다.
열 최소 ( : 키 , : 나이 , : 나이2 )
당신의 상태는 "... 일치하는 항목이 없으면 최소값을 나열하지 마세요..."라는 메시지가 명확하지 않으며 위의 공식은 "일치하는 항목"이 하나 이상(즉, 행 자체) 있으므로 항상 최소값을 반환합니다. 아래 수식은 다음 조합이 한 번만 발생하는 경우 "최소" 대신 누락된 값을 반환해야 합니다. 나이 그리고 나이2.
만약에 ( 열 번호 ( : 키 , : 나이 , : 나이2 ) > 1 ,
열 최소 ( : 키 , : 나이 , : 나이2 )
)
바이런,
좀 빠지는.두 세트가 언제 일치하는지 알아야 합니다. 예:
행 1 - Age = 12, Age2 =13에서 동일한 행에 Age =12 및 Age2 =13인 다른 행을 표시합니다. 이는 테이블에서 20번 발생할 수 있으므로 해당 20번 중에서 열을 선택합니다. 최소 20개 행에서 시작됩니다.
이제 2행으로 이동하여 해당 값에 대해 동일한 비교를 수행합니다. 일치하는 항목이 없으면 최소값을 나열하지 않습니다.
이런 일을하려고하십니까?
이 경우 :age=:age2이면 표시 변수를 얻습니다. col maximum()을 사용하면 연령별, 표시별로 최소 높이를 얻을 수 있습니다(단, 표시기가 누락되지 않은 경우에만 해당).
(이 스크립트를 실행하고 표의 공식을 살펴보세요)
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << 새 열( "2세",
숫자,
"마디 없는",
형식( "최고", 12 ),
값 설정(
[14, 12, 13, 13, 13, 14, 12, 15, 13, 12, 14, 14, 13, 15, 14, 12, 14, 15, 13, 13, 14, 15,
15장, 15장, 14장, 15장, 12장, 15장, 15장, 15장, 14장, 13장, 15장, 15장, 14장, 15장, 12장, 14장, 13장, 13장]
)
);
dt << 새 열( "age == age 2",
숫자,
"명사 같은",
형식( "최고", 12 ),
공식( If( :나이 == :나이 2, 1, . ) ),
선택 항목 설정
);
dt << New Column( "나이=age2인 경우 최소 키",
숫자,
"명사 같은",
형식( "최고", 12 ),
공식(
If( Is Missing( :Name( "age == age 2" ) ) == 0,
Col 최소( :height, :age, :Name( "age == age 2" ) ),
.
)
)
);