# naver search confirm # markdown number and equation R을 이용한 t-test와 효과 크기 계산 //google adsense
본문 바로가기
R_데이터 분석 기술

R을 이용한 t-test와 효과 크기 계산

by 노마드분석가 2022. 5. 4.

관련글

 

t-test 밑바닥부터 이해하기

※ 관련글 확률, 확률변수 그리고 확률분포 1. 들어가며 통계학은 기술통계와 추론통계로 구분되는데, 기술통계와 추론통계를 연결해주는 것이 확률분포이다. 그런데 확률분포를 이해하기 위해

diseny.tistory.com

1. 들어가며

위의 관련글에서 두 표본(독립표본)의 평균 차이 검증에 대한 이론을 살펴보았다. 이제 R을 이용해 t-test를 실행하고 효과 크기(effect size)를 간편하게 산출해보자. 

 

2. 예제 데이터

데이터는 UC Irvine Machine Learning Repository에서 제공하는 adult 데이터를 활용한다. 아래 코드는 웹 사이트에서 데이터를 읽어 들이고 변수 이름을 지정한다.  

 

adult <- read.csv(url("https://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data"), header=F)
colnames(adult)<-c("age","workclass","fnlwgt","education","education_num",
                   "marital_status","occupation","relationship",
                   "race","sex","capital_gain","capital_loss",
                   "hours_per_week","native_country")

 

데이터의 구조를 살펴보면 다음과 같다. 32,561개의 데이터와 15개의 변수를 갖느다. 

 

 

이중에서 성별(sex)에 따른 education_num의 평균 차이를 검증해 보자. 

 

3. 두 표본의 등분산성 검증

t-test를 시행하기 전에 우선 두 표본의 분산이 동일한지 검증해야 한다. var.test 함수를 이용하며 "education_num ~ sex" formular를 이용한다. 

 

var.test(education_num ~ sex, data = adult, alternative="two.sided")

 

var.test의 귀무가설(영가설)은 분산이 동일하다는 것이다. 위의 코드를 실행하면 결과는 아래와 같다. 

 

 

영가설이 맞다는 전체(두 표본의 모분산은 동일하다)하에 F값은 0.79894이며 이 값 이상을 표본에서 얻을 확률 p < 2.2e-16 이다. 즉 0.05보다 작기 때문에 영가설은 기각한다. 즉 분산은 동일하지 않다. 

 

4. 두 표본의 평균 차이 검증

t.test 함수를 이용하는데 몇 가지 옵션이 있다. alternative="two.sided"는 양측 검증을 의미하며 단측 검증은 가설에 따라 less 또는 greater를 지정하면 된다. var.equal은 등분산인지 아닌지 지정하는 것으로서 위에서 분산이 동일하지 않다는 결과를 얻었으므로  var.equal=F 로 지정한다. 이 t-test의 영가설은 "두 표본의 모평균은 동일하다"이다. 

 

t.test(education_num ~ sex, data=adult, alternative="two.sided",var.equal=F)

 

코드를 실행하면 다음과 같은 결과를 얻는다. 가장 중요한 값은 t 값의 유의확률인데 0.02137 즉, 0.05보다 작기 때문에 영가설, 즉 표본의 모평균이 동일하다는 가설을 기각하고 차이가 있다는 대안가설을 받아 들인다. 

 

 

5. 효과크기 

위의 결과를 보면 Female의 평균이 10.03574, Male의 평균이 10.10289로서 평균 차이는 아주 작지만 표본의 수가 워낙 크기 때문에 (n=32,561) 두 표본의 모평균 차이는 유의하다는 결론을 얻기 아주 쉽다. 따라서 이 경우에는 t값의 유의확률보다는 효과 크기가 더 의미가 중요하다고 볼 수 있다. 

 

 

효과크기(Effect Size)의 의미와 필요성

1. 들어가며 기초 추론 통계 방법 중, 두 집단의 평균차이 검증(T-test)이 있다. 두 표본의 평균 차이가 모집단 차원에서도 있는 것인지 아니면 표본에서만 우연히 차이가 있는지 검증하는 방법이

diseny.tistory.com

 

효과크기는 effsize 패키지의 cohen.d 함수를 이용한다. 

 

library(effsize)
cohen.d(education_num ~ sex,data = adult)

 

코드를 실행하면 다음과 같은 결과를 얻는다. 효과크기 값은 - 0.026으로서 무시할 수 있는 수준(ngligible), 즉 효과크기가 매우 적다. 따라서 두 표본의 모평균 차이는 통계적으로 유의하게 나지만 실제적인 차이의 크기는 아주 작은 수준이라고 할 수 있다.  

 

반응형

'R_데이터 분석 기술' 카테고리의 다른 글

리커트(likert) 척도 데이터 분석  (0) 2022.06.11
R 확인적 요인분석(CFA)  (0) 2022.05.13
R 크론바흐 알파 값 계산  (0) 2022.05.13
R 랜덤포레스트(randomforest)  (0) 2022.05.03
R_의사결정나무 분석(rpart)  (0) 2022.05.02
R 회귀분석  (0) 2022.04.13
R 교차표 작성  (0) 2022.04.08

댓글