수천 개의 ID가 있는 별도의 데이터세트를 사용하여 데이터세트를 필터링하는 방법(하위 쿼리, 스크립팅)수백만 개의 행을 포함하는 "BIG" 데이터 세트가 있습니다. 각 행에는 특정 IDENT 필드가 있습니다. IDENT는 여러 번 발생할 수 있습니다. 수백 개의 행만 포함하는 또 다른 작은 데이터 세트 "SMALL"이 있습니다. 각 행에는 특정 IDENT 필드도 있습니다.
이제 SMALL에 동일한 ID가 있는 BIG의 모든 행을 유지하고 싶습니다. 즉, SMALL의 IDENT 필드를 사용하여 BIG를 필터링하는 방법입니다. SAS SQL을 사용하면 쉬울 것입니다. 예를 들어
프로세스 SQL ;
필터링된 테이블 생성
BIG에서 *를 선택하세요.
여기서 IDENT in (SMALL에서 IDENT 선택) ;
그만두다 ;
JMP에서 이와 같은 작업을 수행할 수 있나요?
친절한 안부
초보자
Re: 수천 개의 ID가 있는 별도의 데이터세트를 사용하여 데이터세트를 필터링하는 방법(하위 쿼리, 스크립팅)JSL 스크립트에서는 다음과 같습니다.
data table ("Big") << join (with(data table("Small")),
by matching columns (::ID=:ID),
drop mutiples (0,0),
include nonmatches(0,0),
preserve main table order(1)) ;
자잘한 오타가 있을 수 있으니 주의하세요...
Re: 수천 개의 ID가 있는 별도의 데이터세트를 사용하여 데이터세트를 필터링하는 방법(하위 쿼리, 스크립팅)조인을 대화형으로 실행하면 방금 생성된 데이터 테이블로 이동하여 데이터 테이블 왼쪽 가장자리에 있는 테이블 패널의 녹색 삼각형 옆에 있는 "소스" 항목을 마우스 오른쪽 버튼으로 클릭하고 "소스"를 선택할 수 있습니다. 편집하다".조인된 데이터 테이블을 생성하는 데 사용된 JSL이 표시됩니다.
Re: 수천 개의 ID가 있는 별도의 데이터세트를 사용하여 데이터세트를 필터링하는 방법(하위 쿼리, 스크립팅)귀하의 노력에 감사드립니다. 그러나 대화형 설명이 아닌 스크립팅 답변에 관심이 있었습니다.
Re: 수천 개의 ID가 있는 별도의 데이터세트를 사용하여 데이터세트를 필터링하는 방법(하위 쿼리, 스크립팅)친애하는 Newbie2Jumpie님께,
이것은 여러 가지 방법으로 가능합니다. 새 테이블을 생성하려는지 아니면 필터링만 원하는지에 따라 다릅니다. 새 테이블을 만드는 것부터 시작해 보겠습니다(RAM이 충분한지 확인하세요).
- JMP에서 두 테이블 모두 열기
- 테이블 메뉴에는 다음과 같이 필요에 따라 조인과 같은 데이터베이스를 수행할 수 있는 "조인"이 있습니다.

3. 확인을 누르면 단축된 새 테이블이 생성되고 다른 두 테이블을 닫을 수 있습니다.
Tables -> JMP Query Builder 메뉴를 사용하여 비슷한 결과를 얻을 수 있지만, 데이터베이스 쿼리 빌더와 같은 더 많은 옵션이 있으며 소스 스크립트 외에도 쿼리 옵션을 변경하는 데 사용할 수 있는 업데이트 스크립트 및 기타 옵션이 제공됩니다. (이를 설명하기 위한 예제 첨부(Big Class.jmp, ID_Table.jmp, SQLQuery1.jmp)
다른 옵션을 사용하면 즉석에서 필터링할 수 있습니다. 즉, 가상 조인이라고도 불리는 연결/참조 테이블을 사용하는 것입니다. 참조된 테이블에는 id에 대한 Big 테이블과 동일한 이름을 가진 열과 작은 테이블의 ID 열과 동일한 내용을 가진 또 다른 열이 필요합니다(따라서 실제로 이름만 다를 뿐 동일한 ID 열의 두 배) . (두 번째 예를 살펴보시기 바랍니다. 작은 테이블에서는 큰 테이블과 동일한 이름의 ID 열을 링크 ID로 지정합니다(열과 링크 ID를 마우스 오른쪽 버튼으로 클릭). 큰 테이블에서 ID 열을 마우스 오른쪽 버튼으로 클릭하고 링크 참조를 선택하고 참조로 작은 테이블을 선택합니다. 이제 작은 테이블의 모든 열이 큰 테이블에 숨겨진 열로 시각화됩니다. 이제 작은 테이블과 같은 항목만 있는 두 번째 ID 열을 통해 필터링할 수 있습니다. 이렇게 하면 다른 모든 항목이 제외되므로 관심이 있지만 다른 테이블에 나열된 행만 고려됩니다.