검정의 종류
평균 검정이란 단일 or 독립 집단 사이의 가설 검증을 위한 수단이다.
집단의 평균의 차를 비교하기 위해 수치형 변수를 사용한다.
검정통계량(평균검정 : t값)과 p-value를 계산하여 신뢰구간을 만족하는지 확인하고, 가설의 채택 여부를 결정한다.
평균검정에는 z-검정, t-검정, 분산분석으로 나뉜다.
z-검정과 t-검정은 비교 집단이 2개 이하일 경우, 분산분석은 비교 집단이 3개 이상일 경우 사용한다.
z-검정은 모분산을 알고 있을 때만 사용이 가능한 반면, t-검정은 모분산을 모를 때도 사용이 가능하다.
t-검정의 종류
1. 일표본(단일 표본) t-검정( 1-sample T-test )
: 기존에 알려져 있는 평균 값이 맞는지를 확인하기 위한 검정방법
일반적으로 모집단의 평균이 특정 값으로 알려져있는 경우, 실제로 모집단의 평균이 특정 값과 같은지에 대해 가설을 세우고 검정한다.
일반적으로 알려진 특정 값 : 여성의 평균키는 161이다.
=> 실제 한국 여성의 평균키가 161이 맞는지를 검정
일반적으로 알려진 특정 값 : A대학교 평균 토익 점수는 800점이다.
=> 실제 이 점수가 맞는지 확인
code
import numpy as np
from scipy import stat
# 초기값 고정
np.random.seed(1)
# 평균 = 180, 표준편차는 5로 하는 20개의 랜덤값을 만들자.
heights= [180 + np.random.normal(0,5) for _ in range(20)]
# t-test : stats.ttest_1samp
tTestResult= stats.ttest_1samp(heights,175)
#print result
print("The T-statistic is %.3f and the p-value is %.3f" % tTestResult)
The T-statistic is 3.435 and the p-value is 0.003
p-value가 0.003으로, 기각역을 p<0.05로 설정했을 때 귀무가설을 기각한다.
즉, 학생들의 실제 평균 키가 175일 때, 위와 같은 표본을 얻을 확률이 0.003으로, 학생들의 평균 키는 175가 아니라고 할 수 있다.
그럼 180을 넣으면 어떻게 될까?
The T-statistic is -0.529 and the p-value is 0.603
p-value가 0.603으로, 기각역을 p<0.05로 설정했을 때 귀무가설을 기각하지 못한다.
즉, 학생들의 실제 평균 키가 180일 때, 위와 같은 표본을 얻을 확률이 0.603으로, 학생들의 평균 키는 180이라고 할 수 있다.
2. 독립표본 t-검정( Unpaired T-test )
: 독립된 두 집단의 평균 차이를 검정하는 기법이다. 반드시 서로 무관한 독립된 두 집단을 사용해야한다. 독립표본 t-검정의 경우, 등분산 여부에 따라 결과값이 달라지기 때문에 독립표본 t-검정을 시행하기 전에 '등분산검정'을 시행한 후 그 결과에 따라 독립표본 t-검정을 시행한다.
등분산검정 : 두 모집단에서 추출한 표본의 분산이 같은 것을 말한다.
남녀의 평균 키에 차이가 있는지 비교할 때
10대와 20대의 평균 수면시간 차이를 비교하고자 할 때
한국인과 미국인의 평균 쌀 섭취량을 비교할 때
code
# 초기값 고정
np.random.seed(1)
# 두 개의 집단을 만들자
#group 1 heights : mean 170, standard deviation 5
group1Heights= [170 + np.random.normal(0,5) for _ in range(20)]
#group 2 heights : mean 180, standard deviation 10
group2Heights= [175 + np.random.normal(0,10) for _ in range(20)]
# 등분산 검정
lresult = stats.levene(group1Heights, group2Heights )
print('LeveneResult(F) : %.3f \np-value : %.3f' % (lresult))
LeveneResult(F) : 4.158
p-value : 0.048
F값(집단간 분산/집단내 분산)이 클 수록 두 표본의 분산이 동일하지 않음을 의미한다.
F값이 4.158, p-value가 0.048으로 신뢰수준 두 표본의 분산이 동일하지 않은 것으로 확인되었다. 등분산이 아니기 때문에 equal_var = False로 설정하고 독립표본 t-검정을 진행하자.
# 등분산이 아니다
tTestResultDiffVar= stats.ttest_ind(group1Heights, group2Heights, equal_var=False)
print("The t-statistic and p-value not assuming equal variances is %.3f and %.3f" % t
The t-statistic and p-value not assuming equal variances is -2.329 and 0.026
궁금해서 등분산이라고 가정했을 때의 t-test를 해보았다.
# 등분산이다
tTestResult= stats.ttest_ind(group1Heights, group2Heights)
print("The t-statistic and p-value assuming equal variances is %.3f and %.3f." % tTestResult)
# 결과
The t-statistic and p-value assuming equal variances is -2.329 and 0.025.
결과를 확인해보니 기각역이 p < 0.05일 때 귀무 가설을 기각한다. 즉, 두 집단의 평균 키는 같지 않음을 의미한다. 두 집단의 분산이 같다고 가정했을때보다 같지 않다고 가정했을 때 p-value가 높다.
3. 쌍체표본 t-검정( Paired T-test )
: 동일한 항목, 사람, 물건에 대한 측정 값이 두개인 경우 그 차이를 비교하기 위해 사용하는 검정방법
이 때 분석 대상의 표본은 반드시 대응되어야한다. ( 만약 대응되지 않으면 결측값이 있다는 의미이므로 결측값을 처리한 후 분석 진행 ) 또한, 대응표본은 시간의 개념이 있어 꼭 독립된 두 집단이 아니어도 된다.
7월이 생일인 고객에게 20% 할인 쿠폰 부여 후 브랜드 만족도 조사를 했을 때 ( 쿠폰 부여 전과 후 비교 )
다이어트 중인 사람에게 채식을 시키고 3개월 뒤에 몸무게의 변화를 검정하고자 할 경우
code
# 초기값 고정
np.random.seed(1)
# 약물 복용 전 : 평균 60, 표준 편차 5
beforeWeights= [60 + np.random.normal(0,5) for _ in range(20)]
# 약물 복용 후 : 기존 몸무게 * 0.99( 표준편차 0.02 )배
afterWeights= [w * np.random.normal(0.99,0.02) for w in beforeWeights]
# t-test : stats.ttest_rel
tTestResult= stats.ttest_rel(beforeWeights, afterWeights)
print("The T-statistic is %.3f and the p-value is %.3f" % tTestResult)
The T-statistic is 2.915 and the p-value is 0.009
기각역 p < 0.05에서 귀무가설을 기각한다. 즉, 다이어트 약 복용 전과 후에 체중 차이는 유의미하다고 할 수 있다.
Student's t-test - Wikipedia
From Wikipedia, the free encyclopedia Jump to navigation Jump to search Statistical method The t-test is any statistical hypothesis test in which the test statistic follows a Student's t-distribution under the null hypothesis. A t-test is most commonly app
en.wikipedia.org
T-test in python
Python에서 t-검정을 하는 방법에 대해 알아보자. 1-Sample T-test(단일 표본 t-검정) 전체 학생들 중 20명의 학생들을 추려 키를 재서 전체 학생들의 평균 키가 175cm인지 아닌지 알아보고 싶다. 귀무 가��
thenotes.tistory.com
파이썬으로 데이터분석하기 t-test 평균검정
안녕하세요. 오늘은 파이썬으로 t-test 즉, 평균검정을 해보도록 하겠습니다. 개요 평균 검정은 단일집단 혹은 독립된 집단 사이의 가설을 검정하기 위한 수단으로 수치형 변수에 대해 집단의 평균의 차를 비교하..
no17.tistory.com
shp1204/statistics
python으로 통계 공부. Contribute to shp1204/statistics development by creating an account on GitHub.
github.com
'AI > Statistics' 카테고리의 다른 글
07. 자유도( degree of freedom ) (4) | 2020.05.14 |
---|---|
06. 다중 검정( Multiple Comparison ) (0) | 2020.05.13 |
04. 통계적 유의성과 p-value (0) | 2020.05.10 |
03. 재표본추출 (0) | 2020.05.09 |
02. 가설 검정 (0) | 2020.05.08 |