-1

사용 등가 찾기 :최적 클러스터 화학식 : I는 I 매트릭스 B에서 계산 된 두 변수가 NbClust

1) 상관 행렬

에서 상관 행렬 cor(B)

2) 유사성 행렬의 계층 클러스터

그런 다음 clustConfigurations 함수를 사용하여 "팔꿈치 그래프"를 계산하여 최적의 클러스터 양을 결정했습니다. 다음은

참조 코드 : 나는 NbClust라는 또 다른 패키지를 사용하기로 결정 그래서

내가 더 큰 매트릭스 X 1,213 특히 1213으로이 일을 시도
library(NetCluster) 

B = matrix( 
     c(2, 0, 0, 1, 0, 0, 1, 
     0, 1, 0, 0, 2, 1, 0, 
     0, 0, 3, 1, 0, 0, 2, 
     1, 0, 1, 4, 0, 0, 2, 
     0, 0, 0, 0, 4, 0, 2, 
     0, 1, 0, 0, 0, 2, 1, 
     1, 0, 2, 2, 2, 1, 8), 
    nrow=7, 
    ncol=7) 
    colnames(B) = c("A", "B", "C", "D", "E", "F", "G") 
    rownames(B) = c("A", "B", "C", "D", "E", "F", "G") 
B 

    A B C D E F G 
A 2 0 0 1 0 0 1 
B 0 1 0 0 0 1 0 
C 0 0 3 1 0 0 2 
D 1 0 1 4 0 0 2 
E 0 2 0 0 4 0 2 
F 0 1 0 0 0 2 1 
G 1 0 2 2 2 1 8 

Correlation_Matrix <- cor(B) 
dissimilarity <- 1 - Correlation_Matrix 
Correlation_Matrix_dist <- as.dist(dissimilarity) 
Correlation_Matrix_dist 
HClust_Correlation_Matrix <- hclust(Correlation_Matrix_dist) 
clustered_observed_cors = vector() 
num_vertices <- ncol(B) 
clustered_observed_cors1 <-clustConfigurations(num_vertices,HClust_Correlation_Matrix,Correlation_Matrix) 

, 매트릭스는이 스크립트를 실행하기에 너무 큰했다.

은 문서 :

https://cran.r-project.org/web/packages/NbClust/NbClust.pdf

내 목표는이 새로운 패키지 위의 과정을 다시했지만, 난 위에서 아래의 코드와 동일 여부를 확실하지 않다 :

library(NbClust) 

nbclustering<-NbClust(diss = Correlation_Matrix_dist, 
distance = NULL, 
min.nc=2, 
max.nc=20, 
method = "complete", 
index = "dunn") 

This would give you the optimal amount of clusters: 
nbclustering$Best.nc 

위의 코드는 원래 코드와 동일합니까? 그렇지 않은 경우 어떤 변경을해야합니까?

감사합니다!

+0

결국 무엇을 달성하고 싶습니까? 변수를 클러스터링합니까? 귀하의 질문은 귀하가 대답을 원하는 질문이 아닐 수도 있습니다. – YCR

+0

최적의 클러스터 양을 찾은 다음 계층 형 클러스터 덴 드로 그램으로 돌아가서 내 발견을 바탕으로 컷오프를 만들고 싶습니다. 나는 말 그대로 dendogram을 사용하지 않을 것이고, 나는 결과를 사용할 것입니다. @YCR –

+0

Stanford R Labs를 참고 자료로 사용했으며 상관 매트릭스를 사용하도록 언급했습니다. 이것은 궁극적으로 소셜 네트워크 분석을위한 것입니다. 링크는 다음과 같습니다. http://sna.stanford.edu/lab.php?l=6이 코드는 124 행에서 시작됩니다. –

답변

1

NbClusthclust보다 광범위한 함수이며 마지막 클러스터 수를 측정하는 데 더 많은 중점을두고 있습니다.

hclust의 기본 방법은 "complete"입니다.

옵션이 method = "complete" 인 NbClust와 동일한 방법입니다.

따라서 Nbclust 결과를 사용하여 함수 hclust에서 얻은 클러스터링의 최종 클러스터 수를 정의하는 것이 옳습니다.

+0

인덱스에 대해서는 frey, mcclain, cindex, sihouette 및 dunn의 4 가지 옵션이 있습니다. 어느 것이 원래 코드와 동일한 결과를 줄 것입니까? –

+0

'clustConfigurations' 함수는 NbClust에서 구현되지 않습니다. 그러나 다른 메트릭을 사용하여 문제에 대한 최적의 클러스터 수를 비 그래픽으로 파악할 수 있습니다. – YCR

+0

그래, 어쩌면 내가 가장 인기있는 것이 무엇인지 선택하고 선택할 수있는 5 가지 지표를 볼 수있을 것이다.이것이 최선의 방법이라고 생각하거나 다른 제안이 있으십니까? @YCR –