일표본 t-검정
표본 평균과 특정 기준값(모집단의 가설적 평균)을 비교할 때 사용
cats 데이터에서 고양이들의 평균 몸무게가 2.6kg인지 아닌지 통계적 검정을 수행하여라. (양측검정, 유의수준 = 0.05)
1. 가설설정
귀무가설 : 고양이들의 평균 몸무게는 2.6kg이다.
대립가설 : 고양이들의 평균 몸무게는 2.6kg이 아니다.
2. 유의수준 설정 (0.05)
문제에서 제시된 0.05 사용
3. 정규성 검정
from scipy.stats as stats
stats.shapiro(cats['Bwt'])
# 출력값
# ShapiroResult(statistic=0.9788323948987693, pvalue=0.11896203410780715)
=> p-value가 유의수준(0.05)보다 크기 때문에 '데이터는 정규성을 만족한다'라는 귀무가설 채택
4. 검정통계량 값 및 p-value(유의확률) 계산
stats.ttest_1samp(cats['Bwt'], popmean=2.6)
# 출력값
# TtestResult(statistic=6.320333521626425, pvalue=8.182334496617836e-09, df=96)
=> p-value가 유의수준(0.05)보다 작기 때문에 '고양이들의 평균 몸무게는 2.6kg이 아니다'라는 대립가설 채택
대응표본 t-검정
동일한 집단의 두 번의 측정값(전후 변화)을 비교할 때 사용
10명의 환자를 대상으로 수면영양제 복용 전과 후의 수면시간을 측정하였다. 수면영양제의 효과가 있는지를 판단하여라.(유의수준 = 0.05)
data = {'before':[7,3,4,5,2,1,6,6,5,4],
'after':[8,4,5,6,2,3,6,8,6,5]}
data = pd.DataFrame(data)
1. 가설설정
귀무가설 : 수면영양제 복용 전과 후의 수면시간 차이는 없다.
대립가설 : 수면영양제 복용 전과 후의 수면시간 차이는 있다.
2. 유의수준 설정 (0.05)
문제에서 제시된 0.05 사용
3. 정규성 검정
print(shapiro(data['before']))
print(shapiro(data['after']))
# 출력값
# ShapiroResult(statistic=0.9644595362997496, pvalue=0.8352703969642297)
# ShapiroResult(statistic=0.9456836842543015, pvalue=0.6177986322207938)
=> p-value가 유의수준(0.05)보다 크기 때문에 '데이터는 정규성을 만족한다'라는 귀무가설 채택
4. 검정통계량 값 및 p-value(유의확률) 계산
# data[after']의 평균이 data['before']의 평균보다 크다'라는 대립가설을 검정 (오른쪽 단측검정)
stats.ttest_rel(data['after'], data['before'], alternative='greater')
# 출력값
# TtestResult(statistic=4.743416490252569, pvalue=0.0005269356285082764, df=9)
=> p-value가 유의수준(0.05)보다 작기 때문에 '수면영양제 복용 전과 후의 수면시간 차이는 있다'라는 대립가설 채택
독립표본 t-검정
두 개의 독립된 모집단의 평균을 비교할 때 사용
cats 데이터를 가지고 수컷인 고양이와 암컷인 고양이의 몸무게 차이가 있는지 통계적 검정을 수행하여라. (유의수준 = 0.05)
1. 가설설정
귀무가설 : 수컷과 암컷 고양이의 몸무게 차이는 없다.
대립가설 : 수컷과 암컷 고양이의 몸무게 차이는 있다.
2. 유의수준 설정 (0.05)
문제에서 제시된 0.05 사용
3. 정규성 검정
from scipy.stats as stats
stats.shapiro(cats['Bwt'])
# 출력값
# ShapiroResult(statistic=0.9788323948987693, pvalue=0.11896203410780715)
=> p-value가 유의수준(0.05)보다 크기 때문에 '데이터는 정규성을 만족한다'라는 귀무가설 채택
4. 등분산성 검정
stats.levene(female, male)
# 출력값
# LeveneResult(statistic=11.595109822909222, pvalue=0.0009703021630451993)
=> p-value가 유의수준(0.05)보다 작기 때문에 '데이터는 등분산성을 만족하지 않는다'라는 대립가설 채택
4. 검정통계량 값 및 p-value(유의확률) 계산
stats.ttest_ind(female, male, equal_var=False)
# 출력값
# TtestResult(statistic=-14.28231747651286, pvalue=8.827551869381693e-24, df=80.53697992844776)
=> 고양이의 성별에 따른 몸무게가 등분산성을 만족하지 않으므로 equal_var=False로 독립표본 t-검정을 진행함
=> p-value가 유의수준(0.05)보다 작기 때문에 '수컷과 암컷 고양이의 몸무게 차이는 있다'라는 대립가설 채택
'ADP > 통계분석' 카테고리의 다른 글
[통계분석] 예제로 풀어보는 분산분석(ANOVA) - 이원배치 분산분석 (0) | 2024.10.11 |
---|---|
[통계분석] 예제로 풀어보는 분산분석(ANOVA) - 일원배치 분산분석 (0) | 2024.10.11 |
[통계분석] 이항분포 (1) | 2024.10.11 |
[통계분석] 표본 크기 계산 (0) | 2024.10.11 |
[통계분석] 신뢰구간 - 비율의 신뢰구간 (0) | 2024.10.11 |