ADP (R)

[R] 다변량 데이터 상관관계 분석

멋쟁이천재사자 2022. 10. 23. 22:52

ADP 실기를 한 차례 겪어보니 처음 접하는 데이터셋의 변수가 많은 경우 빠르고 효율적인 EDA 방법이 필요해보입니다.오늘은 Boston 데이터셋의 상관관계 분석을 for 구문 apply 구문을 이용해서 처리하는 법을 연구해보았습니다.


data(Boston,package="MASS")

str(Boston)

library(PerformanceAnalytics)
chart.Correlation(Boston)


#1. 가장 원초적인 방법
cor.test(Boston$crim, Boston$medv)
cor.test(Boston$zn, Boston$medv)
# 타이핑하다 날 샐 것 같습니다.
  

#2. 문자 대신 숫자

# 1번 보다는 빠르지만 오래 걸리기는 마찬가지

cor.test(Boston[,1], Boston[,14])
cor.test(Boston[,2], Boston[,14])
cor.test(Boston[,3], Boston[,14])
cor.test(Boston[,4], Boston[,14])
cor.test(Boston[,5], Boston[,14])
cor.test(Boston[,6], Boston[,14])
cor.test(Boston[,7], Boston[,14])
cor.test(Boston[,8], Boston[,14])
cor.test(Boston[,9], Boston[,14])
cor.test(Boston[,10], Boston[,14])
cor.test(Boston[,11], Boston[,14])
cor.test(Boston[,12], Boston[,14])
cor.test(Boston[,13], Boston[,14])

# 3. for loop

# 뭔가 2% 부족한 script 입니다...
x <- cor.test(Boston[,1], Boston[,8])
str(x)
x$p.value
x$estimate

i <- 1
for (i in 1:14){
  print(cor.test(Boston[,i], Boston[,14])$estimate)
}


# 4.apply
# 변수명, 상관계수, p-value 이런식으로 표현하면 보기 좋을 듯 한데...
apply(Boston,2,cor.test,Boston$medv)