카이제곱 검정

Python으로 설문 데이터 분석하기

EbunOluwa Andrew

Data Scientist

카이제곱 검정

  • 범주형 변수 분포에 대한 추론
    • 관측도수 vs 기대도수 비교

Dice photo by Edge2Edge Media on Unsplash

Python으로 설문 데이터 분석하기

설문 분석에서의 카이제곱 검정

  • 모집단의 두 범주형 변수 관계 판단
  • $H_{o}$ = 변수 간 관계 없음
  • $H_{a}$ = 변수 간 관계 있음
  • P-값
    • 유의(<0.05) 시 귀무가설 기각
    • 비유의(>0.05) 시 귀무가설 채택
Python으로 설문 데이터 분석하기

설문 분석에서 카이제곱 검정을 쓰는 이유

  • 출력 변수와 관련 있는 입력 변수 선정

  • 변수들이 모집단에 미치는 영향 파악

  • 차이가 우연인지 통계적으로 유의한지 확인

Survey results photo by Firmbee.com on Unsplash

1 Photo by Firmbee.com on Unsplash
Python으로 설문 데이터 분석하기

설문 분석에서 카이제곱 검정의 가정

  • 두 변수 모두 범주형
  • 표본은 모집단에서 무작위 추출
  • 표본 크기 > 100
  • 기대도수 >=5
Python으로 설문 데이터 분석하기

카이제곱 분석을 위한 설문 데이터

pet_type current_pets time_spent reduces_stress
dog 1 420 yes
dog 1 180 yes
dog 4 30 yes
dog 1 30 yes
dog 1 60 yes
Python으로 설문 데이터 분석하기

카이제곱 분석을 위한 설문 데이터

  • 표본 크기 >100
  • 두 개의 범주형 변수:
    • pet_type
    • reduces_stress
  • $$H_{o} $$ 반려동물 유형과 스트레스 감소 인식 간 관계 없음
  • $$H_{a}$$ 반려동물 유형과 스트레스 감소 인식 간 관계 있음
Python으로 설문 데이터 분석하기

파이썬으로 pet_survey의 카이제곱 분석 단계

import pandas as pd
import scipy.stats as st
data = pd.read_csv('pet_survey.csv') 

cross_table = pd.crosstab(data.reduces_stress, data.pet_type)
chi_analysis = st.chi2_contingency(cross_table)
print(chi_analysis)
|--------------------------|
| (67.7,                   | 
| 1.9e-16,                 |
| 1,                       |
| array([[1767.0, 1825.0], |
| [2251.0, 2325.0]]))      |
Python으로 설문 데이터 분석하기

pet_survey 결과와 해석

  • 도수 >= 5

    • 결과 유효
  • p-값 < 0.05

    • 귀무가설 기각
    • pet_ownedreduces_stress는 관련 있음
  • 반려동물 유형은 스트레스 감소 인식에 영향을 줌

카이제곱 검정 결과

Python으로 설문 데이터 분석하기

연습해 봅시다!

Python으로 설문 데이터 분석하기

Preparing Video For Download...