가치를 발견하고 분류하다.여보세요,
일부 데이터를 분류해야하는 문제가 있습니다. 분류 될 값의 선택은 자동화 된 프로세스가있는 경우 훨씬 쉽습니다. 문제는 3 열 (1 카테고리, 2 깊이 측정, 3 데이터 수)이있는 표입니다.
1) 각 호수마다 0,5 이하의 호수를 얻고 싶습니다 (예제 파일 열 2 참조). 즉, 0,5가 선택 평가에 포함되지 않아야합니다.
2) 또한, 열 1의 각 이름에 대해 가장 많은 데이터를 포함하는 세 개의 가장 깊은 값을 선택하여 대부분의 데이터 요소 (N, 3 열)가있는 열 뒤에 2 열의 값을 정렬하고 싶습니다.
3) 이들을 분류하려면 새 열을 만들고 가장 많은 데이터가있는 열의 1/2/3을 최소 세 개의 데이터로 나누어서 추가하고 싶습니다. 2 개의 깊이가 데이터 수의 수가 동일하면 더 깊은 것은 1 또는 2로 분류해야합니다.
좀 더 나은 이해를 위해 예제 파일을 참조하십시오 :-).
모든 솔루션에 대해 미리 감사드립니다. jsl을 사용하면 가능합니다.
다시 : 값을 찾고 카테고리를 지정하십시오.안녕하세요 @Pacco ,
JMP 12 (또는 이전 버전)를 우연히 사용하고 있습니까? Col Rank ()는 JMP 13에서 Xan이 사용하는 추가 인수를 허용하도록 변경되었습니다.
문서에서 :
JMP 12 :
Col Rank(column)
JMP 13 :
Col Rank(column, <BYVAR>, <<TIE></TIE></BYVAR>
다시 : 값을 찾고 카테고리를 지정하십시오.스크립트를 실행하고 선택한 행의 하위 집합을 다음과 같이 만듭니다.
dt << Subset( Copy formula( 0 ), Selected Rows( 1 ), Selected columns only( 0 ) )
나는 얻다
모든 열은 실제로 순위가 매겨 지지만 Stationsnamn 및 isBelow05의 고유 값 내에 있습니다. 그것은 Col Rank ()에 대한 두 번째 및 세 번째 출제자에 의해 제어됩니다. 스테이션 순위를 함께 정렬하려면 Col Rank () 인수에서 변수를 제거하십시오.
다시 : 값을 찾고 카테고리를 지정하십시오.어떻게 결과가 어떻게 생겼는지 물어봐도 될까요? Mine은 전체 열의 순위를 매 깁니다. 그러나 각 섹션의 순위를 찾고 있습니다 (같은 이름의 각 배치는 Stationsnamn 열을 참조하십시오).
다시 : 값을 찾고 카테고리를 지정하십시오.아이디어를 주셔서 감사합니다, "억제 평가"selecteing 및 deselcting 도왔습니다. 그러나 기다림 5는 아무것도 바뀌지 않았습니다!

다시 : 값을 찾고 카테고리를 지정하십시오.나는 당신의 문제를 일으키는 것이 확실하지 않습니다. 마지막 응답에서 제공 한 데이터 테이블을 열면 사용자가 문제를 보게됩니다. 순위에 대한 열 머리글을 마우스 오른쪽 단추로 클릭하고 열 정보를 선택하여 문제를 해결할 수있었습니다. 열 정보 창이 나타납니다. 아래 그림과 같이 "평가 제외"를 선택한 다음 "적용"버튼을 클릭하십시오. "평가 제외"를 선택 취소하고 "적용"버튼을 다시 클릭하고 열의 값을 수정했는지 확인하십시오

내가 시도하고자하는 다른 것은 "isbelow05"및 "rank"열을 삭제하고 다음 스크립트를 실행하는 것입니다.
dt = Current Data Table();
dt << New Column( "isbelow05", formula( :Profildjup <= 0.5 ) );
wait(.5);
dt << New Column( "rank", formula( Col Rank( -(:n rows + :Profildjup), :isbelow05, :Stationsnamn ) ) );
dt << select where( :isbelow05 & :rank <= 3 );
작동하는 경우 문제점은 "등급"열이 생성되기 전에 "isbelow05"수식이 완료되지 않고 문제를 일으키는 것일 수 있습니다. 그만큼
wait(.5);
컬럼 "isbelow05"의 생성을 완료 할 시간을줍니다.
다시 : 값을 찾고 카테고리를 지정하십시오.그게 이상 하네. 방금 샘플 파일을 여기에서 다시 다운로드했습니다 (차이점은 하나의 추가 열을 사용하여 선택했음을 나타냅니다). 그러나 업로드 한 샘플 파일조차도 이전에 게시 한 것과 동일한 오류를 표시합니다. 그러나 이제는 표면 값에 0,5 열 아래의 값이 표시되었습니다. (첨부 파일 참조)
나는 또한 질문을 단순화 할 수있다. 그런 다음 값을 선택하고 각 호수 이름 섹션의 가장 높은 수에 대한 순위에 따라 분류하면됩니다.
다시 : 값을 찾고 카테고리를 지정하십시오.Xan이 포함 된 스크립트는 첨부 한 샘플 데이터와 잘 작동합니다. 실제 데이터와 첨부 한 예제 데이터 테이블의 차이점은 무엇입니까?
다시 : 값을 찾고 카테고리를 지정하십시오.안녕하세요 그렉,
답장과 스크립트에 감사드립니다. 불행히도 내 데이터에서는 작동하지 않습니다. 결과는 첫 번째 열에 데이터가없고 두 번째 열의 첫 번째 셀에 하나의 항목 만있는 두 개의 새로운 열 ( "4,20533670002011e-315")입니다.
어떤 생각이 잘못 될 수 있었습니까?
다시 : 값을 찾고 카테고리를 지정하십시오.이와 같이 뭔가 올바르게 이해하면 도움이됩니다.
dt = Current Data Table();
dt << New Column( "isbelow05", formula( :Profildjup <= 0.5 ) );
dt << New Column( "rank", formula( Col Rank( -(:n rows + :Profildjup), :isbelow05, :Stationsnamn ) ) );
dt << select where( :isbelow05 & :rank <= 3 );
"below"로 숫자가 큰 것을 의미하는 경우 "<= 0.5"를 "> = 0.5"로 변경하십시오. 예제 파일을 포함 해 주셔서 감사합니다.