JMP Scripting에서 K Means Cluster를 어떻게 선언합니까?여보세요,
KMans Cluster를 사용하여 한 세트의 데카르트 좌표 데이터 세트와 일치하는 JMP 스크립트가 있습니다. 이 스크립트는 동일한 수의 좌표를 갖는 데이터 세트에 대해 잘 작동합니다. 데이터 세트 중 하나에 좌표가 누락되었거나 다른 좌표보다 좌표가 작은 시나리오를 처리하도록 스크립트를 확장하려고합니다. K Means Cluster 대화 상자 창에서 먼저 'Declutter'를 사용하고 특이점을 선택하고 제외하는 방법으로 수동으로이 작업을 수행 할 수 있습니다. JMP 스크립트를 통해이 프로세스를 자동화하고 싶습니다. 내 계획은 'Declutter'기능을 실행하고 가장 가까운 이웃 수를 1로 제한 한 다음 'NN 거리 저장'을 열에 적용하고 평균의 3 시그마가 아닌 행은 제외합니다. 그런 다음 나머지 좌표에 대해 클러스터 분석을 실행하십시오.
JMP 스크립팅을 통해이 작업을 수행하는 방법을 잘 모르겠습니다. 가장 가까운 이웃들에 의해 특이 치를 식별하고 제외하는 작업은 클러스터 기능이 시작되기 전에 이루어져야합니다. 이것은 내가 붙어있는 곳이다.
K Means Cluster 대화 상자를 Declutter 플롯과 함께두고 사용자가 특이점을 강조 표시하고, 제외하고, 클러스터링 알고리즘을 실행하는 것이 더 쉬울까요? 그렇다면 사용자가 이러한 작업을 수행하는 동안 스크립트를 일시 중지 한 다음 클러스터 기능이 완료된 후에 스크립트를 계속할 수 있습니까? 클러스터 결과에서 수행되는 추가 조치가 있습니다.
아래는 K Means Cluster 함수의 스 니펫입니다. nClusters 변수는 좌표 수가 가장 적은 데이터 세트의 행 수로 정의됩니다.
obj = K는 클러스터를 의미합니다. (
와이 ( : 엑스 , : 와이 ) ,
클러스터 수 ( nClusters ) ,
개별적으로 확장 된 열 ( 0 )
) ;
obj << Declutter (1,1);
obj << 가기 ;
어떤 도움이라도 대단히 감사하겠습니다.
-Ry
제목 : Re : JMP Scripting에서 K Means Cluster를 어떻게 선언합니까?안녕,
고맙습니다. 나는이 기능을 더 깊이 탐구 할 것이다.
친애하는,
Ry
제목 : Re : JMP Scripting에서 K Means Cluster를 어떻게 선언합니까?JMP 12에서 어떻게 보였는지에 대한 내 기억이 빠져 있지만 John Sall은 그것을 언급했다. 이리 그래서 나는 그것을 할 수 있다고 생각한다. Cols-> Modeling Utilities를 확인할 수 있습니까? 바라건대 플랫폼을 통해 동일한 분석을 수행 할 수 있기를 바랍니다.
제목 : Re : JMP Scripting에서 K Means Cluster를 어떻게 선언합니까?안녕,
나는이 함수가 JMP 12에서 사용 가능한지 확신하지 못한다. 목록에있는 코드를 테스트 할 때 "이상우 탐색"단계에 대한 결과가 없습니다. NN 거리 저장은 열을 생성하지 않습니다.
문안 인사,
Ry
제목 : Re : JMP Scripting에서 K Means Cluster를 어떻게 선언합니까?JMP 13에서는 심사 플랫폼을 사용하여이 작업을 수행 할 수 있다고 생각합니다.
//Use sample data
dt = Open( "$SAMPLE_DATA/Cytometry.jmp" );
//Find outliers using KNN
outliers = dt << Explore Outliers(
Y( :CD3, :CD8 ),
Name( "Multivariate k-Nearest Neighbor Outliers" )(K( 1 ))
);
//Save the distance to the nearest point
outliers << Save NN Distances;
//Make a column indicating that the point is an outlier. You could skip this and select the points over a certain value directly.
dt << New Column( "Is Outlier",
Numeric, "Nominal",
Formula(
If(
:Nearest 1 Distance > Col Mean( :Nearest 1 Distance ) + 3 *
Col Std Dev( :Nearest 1 Distance ),
1,
0
)
),
Value Labels( {0 = "No", 1 = "Yes"} ), Use Value Labels( 1 )
);
//show which points will be excluded
dt << Graph Builder(
Show Control Panel( 0 ),
Variables(
X( Transform Column( "Row", Formula( Row() ) ) ),
Y( :Nearest 1 Distance ),
Color( :Is Outlier )
),
Elements( Points( X, Y, Legend( 14 ) ) )
);
//Uncomment to Hide and exclude outliers
//dt << select where( :Is Outlier == 1 );
//dt << hide and exclude;