2017-11-09 1 views
0

상관 행렬을 만들고 캐럿 패키지의 findCorrelation() 함수를 통해 0.75보다 큰 다른 매개 변수와 상관 관계가있는 매개 변수를 식별하고 있습니다. 그런 다음 findCorrelation 명령에서 나오는 상관 된 매개 변수를 제거합니다.데이터 프레임/특정 제한 위에 지정된 상관 관계 변수 목록

highlyCorrelated <- findCorrelation(correlationMatrix,cutoff=(0.75),verbose = FALSE) 
correlated_var=colnames(data[,highlyCorrelated]) 
data.dat <- data[!(names(data) %in% c(correlated_var))] 

나중의 결과를 제시 할 때 어떤 매개 변수가 제거되었는지 그리고 어떤 상관 관계가 있는지에 대한 목록을 제시하고자합니다. 첫 번째 열에 제거 된 매개 변수가 포함 된 데이터 프레임을 생성하는 방법이 있습니까? 다음 열에는 해당 특정 매개 변수와 상관 된 매개 변수가 포함되어 있습니까?

I를 사용하여 소정의 상관 관계에 따라 호출 할 수

x는 다른 매개 변수 (들)와 상관 이상 0.75 식별 파라미터
correlationMatrix[correlationMatrix[x,]>0.75,x] 

. 그러나 결과를 제시하기 위해이를 어떻게 데이터 프레임이나 테이블로 변환 할 수 있는지 확신 할 수 없습니다.

도움을 많이 받으실 수 있습니다!

감사합니다, 에디

답변

0

내가 어딘가에 패키지 plyr 및 rowr 사용되었다 :

cor.table <- matrix(, nrow = 0, ncol = 0) 
for (i in sort(highlyCorrelated)){ 
    cor.table.i <- c(paste(colnames(correlationMatrix)[c(i)],":"),paste(names(correlationMatrix[abs(correlationMatrix[i,])>0.75,i]))) 
    cor.table <- cbind.fill(cor.table,cor.table.i,fill=NA) 
} 
cor.table <- t(cor.table[c(-1)]) 

그것은 해결의 비트, 그리고 아마 예쁜, 그러나 적어도 나는 내가 할 수있는 뭔가를 얻을 수 수출.

답변으로 매개 변수 자체가 어떤 이유로 상관 관계가 있다는 사실을 알 수 없습니다.

관련 문제