JSL - 함수의 테이블에서 열 결합하기동시에 여러 열에 함수를 적용하려고 시도하고 있으며이를 수행하는 방법을 파악하는 데 어려움을 겪고 있습니다.
테이블에 "Column 1"과 "Column 2"가 있다고 가정하고 결합 된 데이터의 4 분위수를 계산하려고합니다. 본질적으로 다음과 같이 말합니다.
q1 = 제대 사 분위수 ({: 제 1 열, : 제 2 열}, 0.25);
이것은 작동하지 않습니다 .. 하지만 간단한 해결책이있는 것처럼 보입니다 ... 조언이나 해결책?
미리 감사드립니다.
브래드
재 : JSL - 함수에 대한 테이블에서 열 결합그 트릭을 했어! 칼 쿼타 일 함수와 사 분위 함수를 구별하는 데 시간을 좀 걸렸습니다 (입력이 전환되는 것을 돕지 않습니다!). 고맙습니다.
브래드재 : JSL - 함수에 대한 테이블에서 열 결합열 수식을 사용하는 것 같습니다. 이 솔루션은 열 수식이나 스크립트에서 작동해야합니다. 귀하의 데이터 테이블이 이미 열려 있다고 가정합니다. 솔루션을 시연하기 위해 Big Class를 열었습니다. 텍스트를 직접 입력하거나 붙여 넣을 수 있도록 수식을 두 번 클릭하고 Enter 키를 눌러야합니다.
// assume your data table is already open
// example here is Open( "$SAMPLE_DATA/Big class.jmp" );
Quantile( 0.25, (:height << Get As Matrix) |/ (:weight << Get As Matrix) );
따라서 Quantile 함수는 첫 번째 인수로 원하는 백분위 수 (0.25 분위의 경우 0.25)를 취하고 두 번째 인수로 데이터 집합 (list, matrix)을 취합니다. 그것은 모든 데이터 수집과 함께 작동합니다. (Col Quantile 함수는 데이터 열과 함께 작동하고 중복 된 미래 계산을 피하기 위해 결과를 유지하는 특수 함수입니다.) 여기서 두 번째 인수는 다음으로부터 얻은 두 열 벡터를 수직 결합 (이 연산자에 대한 기호는 |)합니다 데이터 열 행렬의 수직 연결은 데이터 테이블에 데이터 열을 스태킹한다는 아이디어와 동일합니다. 이 concatentaton을 임의의 수의 열로 확장 할 수 있습니다.