Practice makes perfect

[R] 상관관계 분석(Correlation Analysis) 본문

빅데이터/R

[R] 상관관계 분석(Correlation Analysis)

kerpect 2020. 7. 17. 16:49

상관관계 분석(Correlation Analysis) - 관련성 

: 변수 간 관련성 분석 방법으로 하나의 변수가 다른 변수와 관련성 분석하는 방법입니다.

  ex) 광고비와 매출액 사이의 관련성 등 분석

 

 

 

* 상관분석 자세한 설명 

더보기

확률론과 통계학에서 두 변수간에 어떤 선형적 관계를 갖고 있는 지를 분석하는 방법이다. 두변수는 서로 독립적인 관계로부터 서로 상관된 관계일 수 있으며, 이때 두 변수간의 관계의 강도를 상관관계(Correlation, Correlation coefficient)라 한다. 상관분석에서는 상관관계의 정도를 나타내는 단위로 모상관계수 ρ를 사용한다. 상관관계의 정도를 파악하는 상관계수(Correlation coefficient)는 두 변수간의 연관된 정도를 나타낼 뿐 인과관계를 설명하는 것은 아니다. 두 변수간에 원인과 결과의 인과관계가 있는지에 대한 것은 회귀분석을 통해 인과관계의 방향, 정도와 수학적 모델을 확인해 볼 수 있다.


상관 관계 분석 중요사항

– 회귀분석 전 변수 간 관련성 분석(가설 검정 전 수행)
– 상관계수 -> 피어슨(Pearson) R계수 이용 관련성 유무

 

 

상관관계 분석척도 :
피어슨 상관계수(Pearson correlation coefficient : r)

- 상관계수 r과 상관관계 정도

 

기술 통계량 구하기 

 

- 데이터 가져오기 

result <- read.csv("C:/workspaces/R/data/product.csv", header=TRUE)
head(result) # 친밀도 적절성 만족도(등간척도 - 5점 척도)

- 출력값 - 
       제품_친밀도 제품_적절성 제품_만족도
1           3           4           3
2           3           3           2
3           4           4           4
4           2           2           2
5           2           2           2
6           3           3           3

 

- 기술 통계량

summary(result) # 요약통계량

- 출력값 - 
 제품_친밀도     제품_적절성     제품_만족도   
 Min.   :1.000   Min.   :1.000   Min.   :1.000  
 1st Qu.:2.000   1st Qu.:3.000   1st Qu.:3.000  
 Median :3.000   Median :3.000   Median :3.000  
 Mean   :2.928   Mean   :3.133   Mean   :3.095  
 3rd Qu.:4.000   3rd Qu.:4.000   3rd Qu.:4.000  
 Max.   :5.000   Max.   :5.000   Max.   :5.000  
 
 sd(result$제품_친밀도); sd(result$제품_적절성); sd(result$제품_만족도)
 
 - 출력값 - 
[1] 0.9703446
[1] 0.8596574
[1] 0.8287436

sd 표준편차 : 평균을 기준으로 분포되어있는 정도를 보여줍니다. 

 

 

상관계수(coefficient of correlation) : 두 변량 X,Y 사이의 상관관계 정도를 나타내는 수치(계수)

cor(result$제품_친밀도, result$제품_적절성) 출력값 :  0.4992086 -> 다소 높은 양의 상관관계
cor(result$제품_친밀도, result$제품_만족도) 출력값 :  0.467145 -> 다소 높은 양의 상관관계

 

 전체 변수 간 상관계수 보기

cor(result, method="pearson") 

 

방향성 있는 색상으로 표현

install.packages("corrgram")   
library(corrgram)
corrgram(result) # 색상 적용 - 동일 색상으로 그룹화 표시

 

수치(상관계수) 추가(위쪽) 

corrgram(result, upper.panel=panel.conf)

 

수치(상관계수) 추가(아래쪽)

corrgram(result, lower.panel=panel.conf)

 

차트에 밀도 곡선, 상관성, 유의확률(별표) 추가 

install.packages("PerformanceAnalytics") 
library(PerformanceAnalytics)

 

- 상관성, p값(*), 정규분포 시각화 - 모수 검정 조건 

chart.Correlation(result, histogram=, pch="+") 

 

 spearman : 서열척도 대상 상관계수

cor(result, method="spearman") 

 

https://link.coupang.com/a/bsbQYm

 

햇반 백미밥, 200g, 15개

COUPANG

www.coupang.com

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."