본문 바로가기

R 통계

[R] 비모수적 검정 Spearman corr VS Pearson corr

비모수적 검정은 정규분포를 따르지 않는 데이터셋에 대한 검증이다.

모수검정에서 평균을 비교하였지만 비모수적 검정에서는 중위수를 기준으로 데이터를 분석한다.

 

데이터가 정규분포하는 양상을 가질 때에는 Pearson correlation test를 하였다. 데이터가 정규분포하지 않을 때 단순선형회귀를 하는 방법도 있으나 단순선형회귀 이후 residuals이 정규분포해야함을 증명해야한다.

 

그래서 비모수적인 상관관계 분석인 spearman correlation test를 소개하려한다.

 

다음과 같은 personid에 따른 다양한 데이터셋을 기반으로 wt와 age의 상관관계 분석을 해보자

 

> shapiro.test(a2$wt)

        Shapiro-Wilk normality test

data:  a2$wt
W = 0.95398, p-value = 4.21e-10

> qqnorm(a2$wt)
> qqline(a2$wt) 

=> 정규분포 x

 

> shapiro.test(a2$age)

        Shapiro-Wilk normality test

data:  a2$age
W = 0.97757, p-value = 4.855e-06

> qqnorm(a2$age)
> qqline(a2$age)

=> 정규분포 x

 

이때 spearman correlation test를 진행 할 수 있는데 이 검정은 중위값을 이용한 검정이므로 정규분포하지 않은 데이터 셋에서도 사용을 할 수 있는 것이다. 각 데이터를 순위를 매겨 분석을 하므로 정규분포 여부가 중요하지 않음.

 

 

> cor.test(a2$wt, a2$age, method = "spearman")

        Spearman's rank correlation rho

data:  a2$wt and a2$age
S = 14762496, p-value = 2.05e-06
alternative hypothesis: true rho is not equal to 0
sample estimates:
       rho 
-0.2303639 

경고메시지(들):
cor.test.default(a2$wt, a2$age, method = "spearman")에서:
  tie때문에 정확한 p값을 계산할 수 없습니다

 

 

따라서 wt와 age에는 음의 상관관계가 있다.