이들 간의 상관 관계에 따른 클러스터링 변수


23

질문 :

  1. 큰 상관 관계 행렬이 있습니다. 개별 상관 관계를 클러스터링하는 대신 서로 상관 관계에 따라 변수를 클러스터링하려고합니다. 즉, 변수 A와 변수 B가 변수 C와 Z의 상관 관계가 비슷한 경우 A와 B는 동일한 클러스터의 일부 여야합니다. 이에 대한 좋은 실제 사례는 다른 자산 클래스입니다. 자산 내 클래스 상관 관계는 자산 간 클래스 상관 관계보다 높습니다.

  2. 또한 변수 A와 B 사이의 상관 관계가 0에 가까울 때 군집 변수를 군집 관계로 고려하고 있습니다. 갑자기 일부 기본 조건이 변경되고 강한 상관 관계가 발생하면 (양수 또는 음수)이 두 변수가 동일한 군집에 속하는 것으로 생각할 수 있습니다. 따라서 긍정적 인 상관 관계를 찾는 대신 관계와 관계가없는 관계를 찾아야합니다. 유추는 양전하와 음전하를 띤 입자들의 집합 일 수 있다고 생각합니다. 전하가 0으로 떨어지면 입자는 클러스터에서 떨어져 표류합니다. 그러나, 양전하와 음전하 모두 입자를 관련성있는 클러스터로 끌어 당깁니다.

이 중 일부가 명확하지 않은 경우 사과드립니다. 알려 주시면 구체적인 내용을 구체적으로 알려 드리겠습니다.


1
요인 분석이 qn 1에 적합하지 않습니까? 질문 2는 약간 모호합니다. '관계'는 '상관'과 동의어 또는 하나 이상의 관계 형태가 선형 관계이며 상관 관계를 포착합니다. 아마도, 당신은 qn 2를 명확히해야합니다.

당신이하고 싶은 것을 말하였습니다. 귀하의 질문은 무엇인가? 구현 또는 분석 접근법이 적절한 지 여부에 관한 것입니까? 또는 다른 것?
Jeromy Anglim

답변:


14

다음은 bfi데이터 세트를 사용하는 R의 간단한 예입니다 . bfi는 약 5 가지 요소로 구성된 25 가지 성격 테스트 항목의 데이터 세트입니다.

library(psych)
data(bfi)
x <- bfi 

변수 간의 절대 상관 관계를 기반으로 변수 간의 유클리드 거리를 사용하는 계층 적 군집 분석은 다음과 같이 얻을 수 있습니다.

plot(hclust(dist(abs(cor(na.omit(x))))))

대체 텍스트 덴드로 그램은 일반적으로 이론화 된 그룹화 (예 : N (Neuroticism) 항목 그룹화)에 따라 항목이 다른 항목과 어떻게 클러스터링되는지 보여줍니다. 또한 클러스터 내의 일부 항목이 어떻게 더 유사한 지 보여줍니다 (예 : C5 및 C1은 C3의 C5보다 더 유사 할 수 있음). 또한 N 클러스터가 다른 클러스터와 덜 유사하다는 것을 제안합니다.

또는 다음과 같이 표준 요소 분석을 수행 할 수 있습니다.

factanal(na.omit(x), 5, rotation = "Promax")


Uniquenesses:
   A1    A2    A3    A4    A5    C1    C2    C3    C4    C5    E1    E2    E3    E4    E5    N1 
0.848 0.630 0.642 0.829 0.442 0.566 0.635 0.572 0.504 0.603 0.541 0.457 0.541 0.420 0.549 0.272 
   N2    N3    N4    N5    O1    O2    O3    O4    O5 
0.321 0.526 0.514 0.675 0.625 0.804 0.544 0.630 0.814 

Loadings:
   Factor1 Factor2 Factor3 Factor4 Factor5
A1  0.242  -0.154          -0.253  -0.164 
A2                          0.570         
A3         -0.100           0.522   0.114 
A4                  0.137   0.351  -0.158 
A5         -0.145           0.691         
C1                  0.630           0.184 
C2  0.131   0.120   0.603                 
C3  0.154           0.638                 
C4  0.167          -0.656                 
C5  0.149          -0.571           0.125 
E1          0.618   0.125  -0.210  -0.120 
E2          0.665          -0.204         
E3         -0.404           0.332   0.289 
E4         -0.506           0.555  -0.155 
E5  0.175  -0.525   0.234           0.228 
N1  0.879  -0.150                         
N2  0.875  -0.152                         
N3  0.658                                 
N4  0.406   0.342  -0.148           0.196 
N5  0.471   0.253           0.140  -0.101 
O1         -0.108                   0.595 
O2 -0.145   0.421   0.125   0.199         
O3         -0.204                   0.605 
O4          0.244                   0.548 
O5  0.139                   0.177  -0.441 

               Factor1 Factor2 Factor3 Factor4 Factor5
SS loadings      2.610   2.138   2.075   1.899   1.570
Proportion Var   0.104   0.086   0.083   0.076   0.063
Cumulative Var   0.104   0.190   0.273   0.349   0.412

Test of the hypothesis that 5 factors are sufficient.
The chi square statistic is 767.57 on 185 degrees of freedom.
The p-value is 5.93e-72 

1
안녕하세요. Q : abs (cor (...))의 범위를 취한다는 것은 무엇을 의미합니까? cor 행렬은 더 큰 숫자가 더 많은 관계를 나타내는 반면, 거리 행렬에서는 그 반대가 사실입니까? (내가 뭔가 빠진 것 같아, 설명해 주시겠습니까?)
Tal Galili

@Tal 내 이해는 dist 함수가 전달 된 행렬의 유클리드 거리를 취한다는 것입니다.이 경우 절대 상관 행렬이었습니다. 아마도 상관 행렬에서 문자 그대로의 변환은 기존 거리 행렬을 취하는 as.dist () 함수일 것입니다 (예 : as.dist (1-abs (cor (na.omit (x)))). 참조 DIST?
제로미 Anglim

1
1 복근 (고전 ...) 사용하여 :) 나에게 더 나을
탈 Galili 한

@Tal 네. 동의한다. 나는 빨리 보았다. 이 경우 거리 벡터 (1abs cor와 abs cor의 유클리드)는 약 .96과 상관 관계가 있으므로 큰 차이는 없습니다.
Jeromy Anglim

1
@dist 옵션 선택 : 각 변수에는 절대 상관 벡터가 있습니다. 벡터가 더 유사한 변수는 유클리드 거리가 더
좁습니다

2

군집 상관시 거리를 두 번 계산하지 않는 것이 중요합니다. 상관 행렬을 취하면 본질적으로 거리를 계산하는 것입니다. 1-절대 값을 취하여 실제 거리로 변환하려고합니다.

1-abs(cor(x))

이 행렬을 거리 객체로 변환 할 때 dist 함수를 사용하면 상관 관계 사이의 거리를 얻게됩니다. 대신 as.dist()미리 계산 된 거리를 "dist"객체 로 간단히 변환 하는 함수 를 사용하려고 합니다.

이 방법을 Alglim 예제에 적용

library(psych)
data(bfi)
x <- bfi 
plot(hclust(as.dist(1-abs(cor(na.omit(x))))))

다른 덴드로 그램 결과 클러스터 덴드로 그램

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.