본문 바로가기
@ 통계 교양/통계 Tips

t검정 대신 상관분석을 쓸 수 있다고?

by bigpicture 2022. 8. 21.
반응형

t 검정 대신 상관분석을 사용할 수 있다는 흥미로운 사실을 한가지 예시를 통해 보여드리겠습니다. 아래와 같이 남자와 여자 각 30명의 키 데이터가 있습니다. 지면 관계상 12명 씩만 나타냈습니다. 

 

 

t검정

먼저 남녀 키를 비교하는 t검정을 해봅시다. 위 데이터의 경우 이분산가정과 등분산가정 결과가 같았습니다. R로 수행한 t-test 결과는 아래와 같습니다. 

 

 

p값만 보면 됩니다. 0.2683이 나옵니다. 

 

상관분석

위 데이터를 이용하여 상관분석을 하려면 어떻게 해야할까요. 남자와 여자의 상관관계를 보는 것은 불가능합니다. 서로 대응되어 있지 않기 때문입니다. 독립변수~종속변수 관계가 필요합니다. 독립변수와 종속변수를 아래와 같이 설정할 경우 상관분석이 가능해집니다. 

 

독립변수 : 성별

종속변수 : 키

 

성별과 키의 상관관계가 있는지 여부를 확인하는 것입니다. 인과관계라는 의미는 아닙니다. 독립변수를 키로, 종속변수를 성별로 놓아도 상관없습니다. 남자와 여자를 숫자 0과 1에 대응시키겠습니다. 데이터는 아래와 같이 변형할 수 있습니다. 

 

 

그래프로도 나타내면 아래와 같습니다. 

 

 

이제 상관분석을 해봅시다. 재밌는 일이 벌어집니다. 

 

 

p값이 0.2638입니다. t검정 결과와 같습니다. 어떻게 이런일이 가능한지에 대한 수학적인 설명을 한마디로 하기는 어렵습니다. 「손으로 푸는 상관분석」에서 다루겠습니다. 지금은 이런게 가능하다는 정도만 아시면 됩니다. 


아래는 위 글을 작성하는데 사용한 R코드입니다. 데이터는 랜덤추출한 것이기 때문에 각자 컴퓨터에서 코드를 실행하시면 추출된 데이터는 달라질 것입니다. 

 

#표본고정
set.seed(999)
#표본추출
male=rnorm(30,173,10)
female=rnorm(30,173,10)

df1=data.frame(male=male,female=female)
View(df1) #표 출력

#상관분석용 데이터로 바꾸기
sex=c(rep(0,30),rep(1,30))
height=c(male,female)

df2=data.frame(sex=sex,height=height)
View(df2) #표 출력

#그래프 그려보기
plot(sex,height)

#t검정
t.test(male,female,var.equal=TRUE)
#상관분석
cor.test(sex,height)
반응형

댓글