♪ 독립 2표본 검정
- 두 개의 독립적인 모집단에 대한 평균에 통계적으로 유의한 차이가 있는지를 검정하는 방법.
- 독립 : A 집단의 양적 자료가 B 집단의 양적 자료에게 영향을 주지 않는 상태
이제 과정을 진행해보겠다.
독립 2표본은 모집단이 2개가 존재한다. (모집단 A, 모집단 B)
평균은 모집단을 대표하는 값이다.
귀무가설 : A집단의 평균과 B집단의 평균은 같다.
대립가설 : A집단의 평균과 B집단의 평균은 같지 않다.
유의수준 = 0.05
귀무가설과 대립가설이 주어졌다.
이제 귀무가설과 대립가설 중 하나를 선택하기 위해서는 모집단에서 표본을 추출하여 평균을 알아보자.
가정해 보았을 때
A 표본의 평균 - B 표본의 평균 = 0 이라면 귀무가설에 가까울 것이고,
A 표본의 평균 - B 표본의 평균 ≠ 0 이라면 대립가설에 가까울 것이다.
그렇다면 이런 경우는 어떨까.
정답은 알 수 없다. 0.002 라는 값에 주목하면 안된다. 분포를 알아야 0에서 가까운지 먼지 알 수 있다.
가설 검정의 핵심은 "분포" 이다. 그렇다면 분포를 알아보자.
대립가설은 "같지 않다" 일 때는 양 쪽에 기준을 둔다.
그래서 유의수준이 0.05(5%) 일 때 :
상위 2.5%, 하위 2.5%에 해당된다면 대립가설,
상위 2.5%, 하위 2.5%에 해당안되면 귀무가설이다.
이제 파이썬을 통해 알아보자.
import pandas as pd
import scipy.stats as stats
가설 | 귀무가설 : Ideal 가격의 평균과 NonIdeal 가격의 평균은 같다. |
대립가설 : Ideal 가격의 평균이 NonIdeal 가격의 평균보다 비싸다. |
1단계 : 정규성 검정
정규성 검정에 대해서는 이전 게시글에서 언급하였으므로 Pass!
정규성에 맞지 않는다면 2단계로 가지 않고 '윌콕슨의 순위합 검정(Wilcoxon's rank sum test)' 을 진행한다.
정규성을 만족한다면 2단계로 바로 넘어가면 된다.
stats.ranksums(ideal, nonideal)
------------------------------------------------------
RanksumsResult(statistic=-27.277266218787283, pvalue=7.894328467663634e-164)
검정 통계량 : -27.277
p-value : 1 - (0.000) / 2) = 1.000
유의확률이 1.000 이므로 유의수준 0.05 와 비교했을 때
Ideal 과 NonIdeal 의 가격에 통계적으로 유의한 차이는 없는 것으로 나타났다.
2단계 : 등분산 검정
등분산 검정에서 가장 많이 활용되는 것으로는 '레빈의 검정(Levene's test)' 와 '바틀렛 검정(Bartlett's test)'가 있다.
- Levene's test : stats.levene(data1, data2)
- bartlett's test : stats.bartlett(data1, data2)
등분산 검정에서의 귀무가설은 "등분산이다." 가 될 것이고, 대립가설은 "이분산이다." 가 될 것이다.
ideal = diamonds.loc[diamonds.cut == "Ideal", "price"]
nonideal = diamonds.loc[diamonds.cut != "Ideal", "price"]
내가 가지고 있는 데이터 "diamonds" 에서 Ideal에 해당되는 가격과 해당되지 않는 가격을 각각 선언했다.
그리고 levene's test 를 하였다.
stats.levene(ideal, nonideal)
----------------------------------------------------
LeveneResult(statistic=244.8982065343527, pvalue=4.446981310047094e-55)
검정통계량 : 244.898
p - value : 0.000
유의확률이 0.000 이므로 유의수준 0.05와 비교했을 때 이분산(대립가설) 인 것을 알 수 있다.
3단계 : (이분산이 가정된) 독립 2표본 검정
독립 2표본 검정에서는 등분산과 이분산으로 나뉘게 되는데, 현재 나는 이분산으로 진행중이다.
stats.ttest_ind(ideal, nonideal, equal_var = False)
------------------------------------------------------------------
Ttest_indResult(statistic=-22.985734120999393, pvalue=2.7359864985506295e-116)
검정 통계량 : -22.986
p - value : (1 - 0.000) / 2 = 1.000
유의확률이 1.000 이므로 유의수준 0.05 를 비교하여
품질이 Ideal 인 다이아몬드와 품질이 Nonldeal 의 가격에 통계적으로 유의한 차이가 없는 것으로 나타났다.
* 자료출처 : 2020 AI 데이터분석 개발자과정 : 기초 통계 (이부일 CEO님)
'데이터 분석 > 통계(Statistics)' 카테고리의 다른 글
[Python] 카이제곱 검정(교차분석) (1) | 2020.09.03 |
---|---|
[Python] 대응 2표본 검정(Paired test) - (2) (0) | 2020.08.29 |
[Python] 대응 2표본 검정(Paired test) - (1) (0) | 2020.08.26 |
[Python] 일표본 t 검정(One sample t-test) (1) | 2020.08.21 |
유의수준 + 유의확률(p-value) (0) | 2020.08.19 |