JSL을 사용하여 첫 번째 선택된 행의 지정된 열에서 값 가져오기나는 단순히 첫 번째 선택된 행의 주어진 열에서 값을 얻으려고 노력하고 있습니다. 그러나 어떻게든 이것은 놀라울 정도로 어렵습니다.지금까지 내가 가진 것은 다음과 같습니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Probe.jmp" );
dt << Select Where( :Wafer Number == "16" & :Die X == 3);
selRow = ( dt << get selected rows() )[0];
Row() = selRow;
site = :Site; // returns "1", should return "5" (:Site from row 15)
"사이트"가 5로 끝날 것으로 예상하지만 1로 끝납니다.내가 여기서 무엇을 놓치고 있습니까?
또한 33M 행이 있는 테이블에서 이와 비슷한 것을 시도했는데 JMP가 몇 분 동안 응답하지 않았습니다.이를 수행하는 다양한 방법을 실험하고 있었기 때문에 실수로 먼저 33M 항목 목록을 생성한 다음 14M 항목을 가져오도록 요청했을 수 있습니다.위의 질문에 대한 해결책이 무엇이든 그렇게 되지 않기를 바랍니다.
자동화 및 스크립팅Re: JSL을 사용하여 첫 번째 선택된 행의 주어진 열에서 값을 가져옵니다.Get Rows Where 행렬의 첫 번째 [1] 요소만 참조해야 합니다.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Probe.jmp" );
dt << Select Where( :Wafer Number == "16" & :Die X == 3 );
site = :site[(dt << get selected rows())[1]];
// or
dt = Open( "$SAMPLE_DATA/Probe.jmp" );
site = :Site[(dt << get rows where( :Wafer Number == "16" & :Die X == 3 ))[1]];
Re: JSL을 사용하여 첫 번째 선택된 행의 주어진 열에서 값을 가져옵니다.따라서 데이터 테이블의 데이터는 기본적으로 각각 항목 목록인 일련의 열로 저장됩니다.
(그리고 예, 저는 파이썬 코더이므로 [0] -> [1] 항목을 놓쳤습니다...)
또한 도움이 될 것으로 생각되는 모든 JMP 설명서 섹션을 샅샅이 뒤졌지만 이에 대한 항목, 즉 :site[rowNumber] 표기법을 찾을 수 없었습니다.누군가 이것이 어디에 있는지 알고 있다면 설명서의 해당 섹션을 읽고 싶습니다.
고마워, 짐!
Re: JSL을 사용하여 첫 번째 선택된 행의 주어진 열에서 값을 가져옵니다.데이터 테이블 첨자 커뮤니티의 좋은 게시물이며 Scripting Guide에서 문서를 찾을 수 있습니다. 스크립팅 안내서 > 데이터 테이블 > 데이터 값 액세스 좋은 출발점입니다. 자세한 정보가 있는 다른 페이지에 대한 추가 링크를 제공합니다.
Re: JSL을 사용하여 첫 번째 선택된 행의 주어진 열에서 값을 가져옵니다.@txnelson : 이 접근 방식은 큰 테이블(33M 행)의 값을 반환하는 데 1초의 더 나은 부분을 차지합니다.그렇지 않으면 테이블이 정상적으로 작동하므로 이 접근 방식이 덮개 아래에서 무거운 작업을 수행하고 있을 수 있다고 생각합니다...테스트할 수 있는 다른 접근 방식이 있습니까?
--> 업데이트: 데이터 액세스가 아니라 느린 "Get Selected Rows()" 호출이라는 것을 방금 깨달았습니다.궁금합니다. 빨라야 할 것 같습니다.
Re: JSL을 사용하여 첫 번째 선택된 행의 주어진 열에서 값을 가져옵니다.저는 일반적으로 Get Rows Where()를 Select Where보다 먼저 사용하고 Get Selected Rows를 사용합니다.선택한 행을 시각적으로 표시해야 하는 경우가 아니면 항상 더 빠릅니다.
Re: JSL을 사용하여 첫 번째 선택된 행의 주어진 열에서 값을 가져옵니다.@txnelson 내 진정한 목적은 "선택 위치"가 아니라 데이터 테이블(A)에 연결된 하나의 그래프 빌더 플롯에서 포인트를 클릭하고 데이터 테이블에 연결된 그래프 빌더 플롯에서 데이터 필터를 업데이트하고 싶습니다. (비).첫 번째 클릭으로 행을 선택한 다음 JSL은 첫 번째 테이블의 선택된 행에서 id 필드를 가져온 다음 Graph Builder B 플롯의 데이터 필터에 해당 값을 고정해야 합니다.
오늘 Get Selected Rows()를 사용하여 작동하게 했습니다(예!). 하지만 큰 데이터 세트에서 해당 기능이 상대적으로 느리다는 것이 궁금합니다.모든 "1" 또는 무언가에 대해 보이지 않는 열을 검색하고 있다고 생각하게 합니다...
당신의 도움을 주셔서 감사합니다!