📖 전체집단을 모두 조사하는것은 현실적으로 불가능함으로 적절한 표본집단을 지정하여 평균, 표준편차와 같은 통계량을 구한 뒤 이를 통해 모집단의 모수를 검정합니다.
대표적으로 그룹 간의 차이를 검정하는 차이검정과 변수 간 관계(영향)의 유무를 검정하는 관계검정으로 나뉩니다.
이번 글에서는 차이검정 중 T-test에 대하여 정리해보도록 하겠습니다.
사람들은 대부분 비모수 검정보다는 모수 검정을 많이 접합니다. 비모수 검정은 데이터가 특정한 분포를 따른다고 가정하지 않으므로 무분포 검정이라고도 합니다.
데이터가 모수 검정의 가정(특히 정규 분포 데이터에 대한 가정)을 충족하지 않을 때 비모수 검정을 사용해야 한다는 말을 들어본 적이 있을 것 입니다.
이를 표를 통해 어떤 상황에서 어떤 검정을 사용해야 하는지 파악하는 방법을 알려드리겠습니다.
# 귀무가설 : 데이터가 정규성을 만족한다.
# 대립가설 : 데이터가 정규성을 만족하지 않는다.
> library(MASS)
> shapiro.test(cats[cats$Sex == 'M',]$Bwt) # 수컷 고양이 데이터 정규성 검정
Shapiro-Wilk normality test
data: cats[cats$Sex == "M", ]$Bwt
W = 0.97883, p-value = 0.119
# 귀무가설 : 수컷 고양이의 평균 몸무게는 2.8kg이다.
# 대립가설 : 수컷 고양이의 평균 몸무게는 2.8kg이 아니다.
> t.test(cats[cats$Sex == 'M',]$Bwt, mu = 2.8,
alternative = 'two.sided') ## 대립가설 설정
One Sample t-test
data: cats[cats$Sex == "M", ]$Bwt
t = 2.1068, df = 96, p-value = 0.03774
alternative hypothesis: true mean is not equal to 2.8
95 percent confidence interval:
2.805781 2.994219
sample estimates:
mean of x # 평균
2.9
> shapiro.test(cats[cats$Sex == 'F',]$Bwt) #암컷 고양이 데이터 정규성 검정
Shapiro-Wilk normality test
data: cats[cats$Sex == "F", ]$Bwt
W = 0.89096, p-value = 0.0003754
# 귀무가설 : 암컷 고양이의 몸무게 중앙값은 3이다.
# 대립가설 : 암컷 고양이의 몸무게 중앙값은 3이 아니다.
> wilcox.test(cats[cats$Sex == 'F',]$Bwt, 3, alternative = 'two.sided')
Wilcoxon rank sum test with continuity correction
data: cats[cats$Sex == "F", ]$Bwt and 3
W = 1, p-value = 0.1077
alternative hypothesis: true location shift is not equal to 0
# 귀무가설 : 전과 후의 값의 차이는 정규성을 만족한다.
# 대립가설 : 전과 후의 값의 차이는 정규성을 만족하지 않는다.
> shapiro.test(after - before)
Shapiro-Wilk normality test
data: after - before
W = 0.92724, p-value = 0.4213
# 귀무가설 : 약 복용 전과 후의 수면시간 차이는 없다.
#Ux-Uy = D = 0 = = 전/후 평균의 차이는 0이다.
# 대립가설 : 약 복용 전의 후의 수면시간 차이의 0보다 작다.
#Ux-Uy = D < 0 = 전/후 평균의 차이는 0보다 작다.
> t.test(before, after, alternative = 'less', pair =T)
Paired t-test
data: before and after
t = -1.0487, df = 9, p-value = 0.1608
alternative hypothesis: true difference in means is less than 0
95 percent confidence interval:
-Inf 0.5236019
sample estimates:
mean of the differences
-0.7
> data<- data.frame(before = c(7,3,4,5,2,1,6,6,5,4), after = c(8,4,5,6,2,3,6,8,6,5))
> shapiro.test(data$after - data$before)
Shapiro-Wilk normality test
data: data$after - data$before
W = 0.81484, p-value = 0.02195
# 귀무가설 : 약 복용 전/후 중앙값의 차이는 0이다. = 전/후 유의한 차이가 없다.
# 대립가설 : 약 복용 전/후 중앙값의 차이는 0이 아니다. = 전/후 유의한 차이가 있다.
> wilcox.test(data$before, data$after, alternative = 'less', paired = T)
Wilcoxon signed rank test with continuity correction
data: data$before and data$after
V = 0, p-value = 0.005139
alternative hypothesis: true location shift is less than 0
# 수/암컷 심장 무게 데이터의 정규성 각각 확인
> shapiro.test(cats[cats$Sex == 'M',]$Hwt)
Shapiro-Wilk normality test
data: cats[cats$Sex == "M", ]$Hwt
W = 0.97727, p-value = 0.09039
> shapiro.test(cats[cats$Sex == 'F',]$Hwt)
Shapiro-Wilk normality test
data: cats[cats$Sex == "F", ]$Hwt
W = 0.9788, p-value = 0.5435
# 귀무가설 : 고양이의 성별에 따른 심장 무게의 분포가 서로 같다.
# 대립가설 : 고양이의 성별에 따른 심장 무게의 분포가 서로 다르다.
> var.test(cats$Hwt~cats$Sex)
F test to compare two variances
data: cats$Hwt by cats$Sex
F = 0.28519, num df = 46, denom df = 96, p-value = 8.159e-06
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.1765336 0.4818320
sample estimates:
ratio of variances
0.2851912
1) 독립표본 T 검정 (정규성 가정 만족, 등분산성 가정 만족)
# 두 검정의 귀무가설 : 고양이의 성별에 따른 심장무게의 평균은 유의한 차이가 없다.
# 두 검정의 대립가설 : 고양이의 성별에 따른 심장무게의 평균은 유의한 차이가 있다.
> t.test(cats$Hwt~cats$Sex, alternative = 'two.sided' , var.equal = T)
Two Sample t-test
data: cats$Hwt by cats$Sex
t = -5.3539, df = 142, p-value = 3.38e-07
alternative hypothesis: true difference in means between group F and group M is not equal to 0
95 percent confidence interval:
-2.903517 -1.337588
sample estimates:
mean in group F mean in group M
9.202128 11.322680
2) 웰치의 T 검정 (정규성 가정 만족, 등분산성 가정 불만족)
## var.equal = F로 설정해 T-test를 하는 것이 welch's test.
> t.test(cats$Hwt~cats$Sex, alternative = 'two.sided' , var.equal = F)
Welch Two Sample t-test
data: cats$Hwt by cats$Sex
t = -6.5179, df = 140.61, p-value = 1.186e-09
alternative hypothesis: true difference in means between group F and group M is not equal to 0
95 percent confidence interval:
-2.763753 -1.477352
sample estimates:
mean in group F mean in group M
9.202128 11.322680
> shapiro.test(cats[cats$Sex == 'M',]$Bwt)
Shapiro-Wilk normality test
data: cats[cats$Sex == "M", ]$Bwt
W = 0.97883, p-value = 0.119
> shapiro.test(cats[cats$Sex == 'F',]$Bwt)
Shapiro-Wilk normality test
data: cats[cats$Sex == "F", ]$Bwt
W = 0.89096, p-value = 0.0003754
# 귀무가설 : 고양이의 성별에 따른 몸무게의 중앙값은 유의한 차이가 없다.
# 대립가설 : 고양이의 성별에 따른 몸무게의 중앙값은 유의한 차이가 있다.
> wilcox.test(data = cats,
+ Bwt ~ Sex)
Wilcoxon rank sum test with continuity correction
data: Bwt by Sex
W = 757.5, p-value = 8.201e-11
alternative hypothesis: true location shift is not equal to 0