[CodesSates] AI 부트캠프

Hypothesis Test

웅탈 2021. 3. 14. 16:15

Hypothesis Test2

 

T-Test 조건

- 독립성 : 두 그룹이 연결되어 이쓴 (paired) 쌍인지 (cat or cat vs cat or dong)

- 등분산성 : 두 그룹이 어느정도 유사한 수준의 분산 값을 가지는지/ normaltest(data)

- 정규성 : 데이터가 정규성을 나타내는지

 

Non parametric methods

- Categorical 데이터를 위한 모델링

- 극단적인 Outlier가 있는 경우 유효한 방식

- 대표적으로 Chisquare, Kruskal-wallis test

키, 몸무게와 같은 연속형 자료(수량화 할 수 있는 데이터)를 분석할 때에는 T-test와 ANOVA 분석 방법이 사용된다.

반면에, 성별, 혈액형 등 범주형 자료(수량화 할 수 없는 데이터)를 분석할 때는 카이제곱검정법이 사용된다.

 

One sample chi-squared

- 주어진 데이터가 특정 예상되는 분포와 동일한 분포를 나타내는지에 대한 검정

 

주사위를 총 120번 던진다고 가정

 

fair 주사위 라면 공정하게 20번씩 나온다고 예상할 수 있지만 실제는 그렇지 않다

 

 

             
  2 3 4 5 6
예상 20 20 20 20 20 20
실제 17 23 19 21 13 27
실제 3 27 14 26 26 24

 

H0 : 분포가 동일할 것이다.(1~6에서 각각의 범주가 일어날 확률이 동일할 것)

H1 : 분포가 동일하지 않다.

 

obs = 관측 데이터

exp = 기대 값

 

from scipy.stats import chisquare
import numpy as np

obs1 = np.array([19, 23, 20, 18, 22, 21])
chisquare(obs1, axis=None)

# Power_divergenceResult(statistic=0.8536585365853658, pvalue=0.9734853457112421)
# pvalue가 약 0.97로 충분히 큰 값 => 귀무가설 채택. 분포가 동일할 것이다.

obs2 = np.array([2, 33, 6, 23, 8, 26])
chisquare(obs2, axis=None)

# Power_divergenceResult(statistic=48.816326530612244, pvalue=2.4195922231210123e-09)
# pvalue가 0.0000..으로 굉장히 작다. => 귀무가설 기각. 대립가설 채택. 분포가 동일하지 않을 것이다.

 

Two sample chi-square

-두 개의 변수(명목척도) 사이에 연관성이 있는지 확인하기 위한 검정

 

바이러스 감염과 혈앵형의 연관성에 대한 분석을 한다고 가정

 

H0 : 바이러스와 혈액형 사이에는 연관성이 없다.

H1 : 바이러스와 혈액형 사이에는 연광성이 있다.

 

from scipy.stats import chi2_contingency

obs = pd.crosstab(df['virus'], df['bloodtype'])
print(chi2_contingency(obs, correction = False)) 

 

One-tailed VS Two-tailed

- One-tailed

 

H0 : 모집단의 평균이 A와 같다

H0 : 모집단의 평균이 A보다 작다 or 크다

 

유의수준이 0.05 라면, One-tailed는 한 방향으로 유의수준을 모두 할당

만약 H1을 '모집단의 평균이 A보다 크다' 라고 가정하면 오른쪽에만 0.5 위치

 

 

- Two-tailed

 

H0 : 모집단의 평균이 A와 같다.

H1 : 모집단의 평균이 A와 다르다.

 

유의수준이 0.05라면. 반으로 값을 나누어 양 쪽에 0.025

 

'[CodesSates] AI 부트캠프' 카테고리의 다른 글

Bayesian  (0) 2021.03.19
Confidence Interval  (0) 2021.03.16
Hypothesis Test  (0) 2021.03.14
Data Visualize  (0) 2021.03.09
Data Manipulation  (0) 2021.03.09