🎰 통계학 실습 - python/단일모집단에 대한 가설검정

🎲 가설검정 - 단일모집단에 대한 검정

nyamin9 2023. 6. 29. 16:28

모바일은 화면을 돌려 가로화면으로 보시는 게 읽으시기 편할 수 있습니다. 돌려서 보시는 걸 추천드릴게요!! 

 

 

 


.

🎲 01. 모평균에 대한 검정

 

 

• 모분산을 안다는 가정 하에, 표본평균은 Z 분포를 따름.

• 모분산을 모른다는 가정 하에서는, 표본평균은 T(n-1) 분포를 따름 : ttest_1samp( ) 함수

 

 

☑️ Csi 데이터에서 ‘서비스 만족도의 모평균이 70이 아니다’ 라는 가설검정 - 양측검정

# ttest_1samp(a, popmean, alternative='two-sided’)

from scipy.stats import ttest_1samp
print(ttest_1samp(csi.Index, popmean=70))
## T 분포 검정통계량, p-value 출력
## 검정 결과 귀무가설 기각 불가능, 즉 서비스 만족도의 모평균은 70이라는 가설 기각 불가능

Ttest_1sampResult(statistic=0.9999999999999971, pvalue=0.32728688127978656)

 

 

 

☑️ Csi 데이터에서 ‘서비스 만족도의 모평균이 70 이상인가?’ 라는 가설검정 - 우측검정

print(ttest_1samp(csi.Index, popmean = 70, alternative = 'greater'))
## T 분포 검정통계량, p-vlaue 출력
## 검정 결과, 귀무가설 기각 불가능. 즉, 70 이상이라고 할 수 없음.

Ttest_1sampResult(statistic=0.9999999999999971, pvalue=0.16364344063989328)

 

 


 

🎲 02. 모비율에 대한 검정

 

 

• 이항비율 검정 : binom_test(x, n, p, alternative)

정규근사 검정 : 표본크기가  충분히 큰 경우 가능. proportions_ztest(x, n, value = p, prop_var = p, alternative)

 

 

상황 : 어느 제조회사에서 기존의 재료를 사용할 때 불량률은 15% 정도이며, 이와 같은 불량률을 줄이기 위해 새로운 재료를 사용하려고 한다. 새로운 재료를 시험적으로 사용한 수 400개를 뽑아 조사한 결과 54개의 불량품이 발견되었다. 불량률이 종전(15%)에 비해 낮아졌다고 할 수 있는지를 유의수준 5%하에서 검정하자.

 

 

☑️ 이항비율 검정

# binom_test(x, n, p, alternative)

from scipy.stats import binom_test
binom_test(54, 400, 0.15, alternative='less') # retrun p-value
## p-value 검정 결과, 유의수준 0.05보다 크기 때문에 귀무가설 기각 불가능.
## 즉, 재료 변경 후 불량률이 종전보다 낮아졌다고 할 수 없음.

>> 0.2225806768647776

 

 

 

☑️ 정규근사 검정

from statsmodels.stats.proportion import proportions_ztest

stat, pval = proportions_ztest(54, 400, value = 0.15, prop_var = 0.15, alternative = 'smaller')

print('Z : ', stat)
print('p-value : ', pval)
## p-value 검정 결과, 유의수준 0.05보다 크기 때문에 귀무가설 기각 불가능.
## 즉, 재료 변경 후 불량률이 종전보다 낮아졌다고 할 수 없음.

Z :  -0.840168050416805
p-value :  0.20040708469146745

 

 


 

🎲 03. 모분산에 대한 검정

 

 

• 표본분산의 분포 : 카이제곱분포를 따름.

 

 

상황 : 새 측정기구의 정확도를 검사하기 위해 어떤 액체에 포함된 불순물의 양을 16번 측정한 결과이다. 기존 측정기구의 분산이 0.09로 알려져 있다고 할 때, 새 측정기구의 분산이 0.09보다 작다고 할 수 있는지 유의수준 5%하에서 검정하자.

 

 

☑️ 카이제곱검정

## 데이터 임포트
import pandas as pd
Im = pd.read_csv('D://data//Impurities.csv')

## 검정통계량 계산
n = Im.Volume.size
s2 = np.var(Im.Volume, ddof = 1) # 표본분산
sigma = 0.09 # 귀무가설 하에서의 모분산
chi = (n-1)*s2/sigma # 검정통계량
print('검정통계량 : ', chi)

from scipy.stats import chi2

## 기각역 계산
print('기각역 : ', chi2.ppf(0.05, n-1))

## p-value 계산
print('p-value : ', chi2.cdf(chi, n-1))
## p-value 검정 결과, 유의수준 0.05 보다 작기 때문에 귀무가설 기각 가능.
## 즉, 새 측정기구의 분산이 0.09보다 작다고 할 수 있음.

검정통계량 :  5.66666666666667
기각역 :  7.2609439276700325
p-value :  0.015180452235944669