Python에서 샘플 및 두 개의 z 테스트 예제를 실행하는 방법
statsmodels 패키지의 ztest() 함수를 사용하여 Python에서 하나의 샘플과 두 개의 예제 z 테스트를 수행할 수 있습니다.
이 함수는 다음 기본 구문을 사용합니다.
statsmodels. stats . weightstats . ztest ( x1 , x2 = None , value = 0 )
금:
- x1 : 첫 번째 샘플의 값
- x2 : 두 번째 표본의 값(2-표본 z 검정을 수행하는 경우)
- 값 : 0 미만의 평균(1개 샘플의 경우) 또는 평균 차이(2개 샘플의 경우)
다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.
예 1: Python의 Z 테스트 예
특정 모집단의 IQ가 평균이 μ = 100이고 표준 편차가 σ = 15인 정규 분포를 따른다고 가정합니다.
한 연구자는 신약이 IQ 수준에 영향을 미치는지 알고 싶어합니다. 그래서 그는 20명의 환자를 모집하여 이를 시도하고 그들의 IQ 수준을 기록합니다.
다음 코드는 Python에서 샘플 z-테스트를 수행하여 신약이 IQ 수준에 상당한 차이를 유발하는지 확인하는 방법을 보여줍니다.
from statsmodels. stats . weightstats import ztest as ztest
#enter IQ levels for 20 patients
data = [88, 92, 94, 94, 96, 97, 97, 97, 99, 99,
105, 109, 109, 109, 110, 112, 112, 113, 114, 115]
#perform one sample z-test
ztest(data, value= 100 )
(1.5976240527147705, 0.1101266701438426)
1-표본 z 검정의 검정 통계량은 1.5976 이고 해당 p-값은 0.1101 입니다.
이 p-값은 0.05 이상이므로 귀무가설을 기각할 충분한 증거가 없습니다. 즉, 신약은 IQ 수준에 큰 영향을 미치지 않습니다.
예 2: Python의 두 가지 Z 테스트 예
서로 다른 두 도시에 거주하는 개인의 IQ 수준이 알려진 표준 편차를 갖는 정규 분포를 따른다고 가정합니다.
한 연구자는 도시 A와 도시 B에 사는 개인 간의 평균 IQ 수준이 다른지 알고 싶어합니다. 그래서 그녀는 각 도시에서 20명의 단순 무작위 표본을 선택하고 그들의 IQ 수준을 기록합니다.
다음 코드는 두 도시의 평균 IQ 수준이 다른지 여부를 확인하기 위해 Python에서 2-샘플 z-테스트를 수행하는 방법을 보여줍니다.
from statsmodels. stats . weightstats import ztest as ztest
#enter IQ levels for 20 individuals from each city
cityA = [82, 84, 85, 89, 91, 91, 92, 94, 99, 99,
105, 109, 109, 109, 110, 112, 112, 113, 114, 114]
cityB = [90, 91, 91, 91, 95, 95, 99, 99, 108, 109,
109, 114, 115, 116, 117, 117, 128, 129, 130, 133]
#perform two sample z-test
ztest(cityA, cityB, value= 0 )
(-1.9953236073282115, 0.046007596761332065)
2-표본 z 검정의 검정 통계량은 -1.9953 이고 해당 p-값은 0.0460 입니다.
이 p-값은 0.05보다 작으므로 귀무가설을 기각할 충분한 증거가 있습니다. 즉, 두 도시의 평균 IQ 수준이 크게 다릅니다.
추가 리소스
다음 튜토리얼에서는 Python에서 다른 일반적인 통계 테스트를 수행하는 방법을 설명합니다.
Python에서 단일 표본 T-검정을 수행하는 방법
Python에서 2-표본 T 테스트를 수행하는 방법
Python에서 쌍체 표본 T-검정을 수행하는 방법