χ2 test

이승수·2021년 7월 20일
0

1. One sample χ2 test

주어진 데이터가 특정 예상되는 분포와 동일한 분포를 나타내는지에 대한 가설검정 (적합도 검정)

χ2 = Σ(측정값 – 예측값)2 / 예측값
one sample 자유도(df) = 카테고리 - 1

from scipy import stats
1 – stats.chi2.cdf(x2, df)    

ex) 0.97이 나온다면 연관이 있다로 해석

import numpy as np
from scipy.stats import chisquare 
A = np.array([[2, 2, 3, 1, 2, 2]]) 
chisquare(A, axis=None) 

ex) 0.96이 나오므로 비슷하다로 해석

B = np.array([[1, 5, 8, 3, 9, 7]])
chisquare(B, axis=None)

ex) 0.12가 나오므로 비슷하지 않다로 해석

2. Two sample χ2 test

두 변수간에 연관이 있는지 없는지를 검정 (독립성 검정)
귀무가설 : 두 변수간 연관이 없다
대립가설 : 두 변수간 연관이 있다

two sample 자유도(df) = (행 - 1) x (열 - 1)

exp(예측값) = ((각row의 합) x (각column의 합)) / (모든 값의 합)

from scipy.stats import chi2_contingency
chi2_contingency(obs)

(0.00139, 0.97, 1, array([[ 8.96296296,  2.03703704],
       [13.03703704,  2.96296296]]))

출력값 결과 해석
(χ2 statistic, p-value, 자유도, expected value for observed)

profile
AI/Data Science

0개의 댓글

관련 채용 정보