본문 바로가기

IT & AI/AI 지식

범주형 데이터 분석: 카이제곱 검정 (Chi-Square Test)

by 빛나는해커 2024. 12. 5.

안녕하세요! 이번 글에서는 범주형 데이터 분석에서 사용하는 대표적인 통계적 방법인 카이제곱 검정에 대해 알아보겠습니다.

 

카이제곱 검정은 관측된 데이터가 기대치와 얼마나 일치하는지, 두 변수 간의 관계나 여러 집단 간의 차이를 평가하는 데 매우 유용한 도구입니다.
카이제곱 검정에는 크게 적합도 검정, 독립성 검정, 동질성 검정의 세 가지 유형이 있으며, 각 유형에 대해 자세히 살펴보겠습니다.

1. 적합도 검정 (Goodness of Fit Test)

적합도 검정은 관측된 빈도와 예상되는 빈도가 얼마나 일치하는지를 평가하는 데 사용된다. 적합도 검정을 통해 특정 분포가 관찰된 데이터와 얼마나 잘 맞는지를 확인할 수 있다.

 

적합도 검정 개념 및 예시

  • 관찰도수와 기대도수를 비교하여 차이를 확인한다. 예를 들어, 주사위를 60번 던져서 각 숫자가 나온 빈도를 확인하고, 이 값들이 공평한 주사위의 결과와 얼마나 일치하는지를 검정할 수 있다.
  • 사용되는 파이썬 함수는 scipy.stats.chisquare() 이다.
import scipy.stats as stats

# 예시: 주사위를 60번 던졌을 때 각 숫자가 나온 빈도
observed = [10, 9, 12, 13, 8, 8]
expected = [10, 10, 10, 10, 10, 10]

# 적합도 검정 수행
chi2, p_value = stats.chisquare(observed, expected)
print("Chi2:", chi2, "P-value:", p_value)
  • 주의할 점은 관찰된 빈도와 기대된 빈도는 빈도 값을 넣어야 한다는 것이다.
  • 절대 단순한 측정값이 아닌, 빈도로 변환된 데이터를 넣어야 검정이 정확히 수행된다.
적합도 검정 절차 설명
데이터 수집 관찰된 빈도와 기대되는 빈도 데이터를 수집한다.
적합도 검정 수행 scipy.stats.chisquare() 함수로 카이제곱 값과 p-value 계산.
결과 해석 p-value가 유의수준(0.05)보다 작으면 귀무가설을 기각하고 두 빈도가 차이가 있다고 결론.

2. 독립성 검정 (Test of Independence)

독립성 검정은 두 범주형 변수가 서로 독립적인지 여부를 검정하는 데 사용된다. 예를 들어, 흡연 여부와 특정 질병 발생 간의 관계를 확인하고자 할 때 유용하다.

 

독립성 검정 개념 및 예시

  • 두 변수 간의 독립성을 평가하기 위해 교차표를 만든다. 이 교차표는 변수 간의 빈도수를 나타낸다.
  • scipy.stats.chi2_contingency() 함수를 사용하여 검정을 수행한다.
import scipy.stats as stats
import numpy as np

# 예시: 흡연 여부와 질병 발생 간의 교차표
table = np.array([[20, 15], [30, 35]])

# 독립성 검정 수행
chi2, p_value, dof, expected = stats.chi2_contingency(table, correction=True)
print("Chi2:", chi2, "P-value:", p_value)
  • 주의할 점은 scipy.stats.chi2_contingency() 함수의 입력으로 반드시 교차표 형태의 데이터를 사용해야 한다는 것이다.
  • 또한, 기본적으로 연속성 보정(correction=True)이 적용된다는 점을 기억해야 한다.
독립성 검정 절차 설명
데이터 수집 및 교차표 생성 두 변수 간의 데이터를 기반으로 교차표를 만든다.
독립성 검정 수행 scipy.stats.chi2_contingency() 함수로 카이제곱 값과 p-value 계산.
결과 해석 p-value가 유의수준보다 작으면 두 변수는 독립적이지 않음을 의미한다.

3. 동질성 검정 (Test of Homogeneity)

동질성 검정은 두 개 이상의 집단이 동일한 분포를 가지고 있는지를 평가하는 데 사용된다. 예를 들어, 두 학교 학생들의 학업 성취도가 동일한지 여부를 검정하고자 할 때 동질성 검정을 사용할 수 있다.

 

동질성 검정 개념 및 예시

  • 동질성 검정은 독립성 검정과 동일한 절차로 수행되며, 여러 집단 간의 특성 분포가 같은지를 평가한다.
  • 마찬가지로 scipy.stats.chi2_contingency() 함수를 사용한다.
동질성 검정 절차 설명
데이터 수집 및 교차표 생성 여러 집단의 데이터를 기반으로 교차표를 만든다.
동질성 검정 수행 scipy.stats.chi2_contingency() 함수로 카이제곱 값과 p-value 계산.
결과 해석 p-value가 유의수준보다 작으면 집단 간의 분포가 다르다고 해석한다.

4. 카이제곱 검정 결과의 해석

아래 표는 적합도 검정, 독립성 검정, 동질성 검정의 검정 결과 해석을 요약한 것이다. p-value는 유의수준(보통 0.05)과 비교하여 각 가설을 기각할지 결정한다. 

검정 종류 가설 설정 p-value 해석
적합도 검정 관찰 빈도와 기대 빈도의 일치 여부를 검정 p < 0.05: 귀무가설 기각, 관찰값과 기대값 차이 존재
독립성 검정 두 변수 간의 독립 여부를 검정 p < 0.05: 귀무가설 기각, 두 변수는 독립적이지 않음
동질성 검정 두 집단 간의 분포가 동일한지 검정 p < 0.05: 귀무가설 기각, 두 집단의 분포가 다름

 

추가로 카이제곱 검정 결과를 보다 잘 이해하기 위해 시각 자료를 사용하는 것이 좋다. 교차표 적합도 검정 결과 그래프는 데이터의 분포를 쉽게 파악하는 데 도움이 된다.


혹시 이해가 어려우시다면, 이전 글을 먼저 참고해보시면 좋을 것 같습니다.

 

가설 검정의 이해와 프로세스, 단일 표본 검정

안녕하세요! 이번에는 데이터 분석의 기본 개념인 가설 검정에 대해 다뤄보았습니다. 특히 t-test 검정 중 단일 표본 검정을 위주로 정리해보았습니다. 먼저 가설 검정의 정의부터 각 과정에 대

actshiny.com

 

대응 표본 검정, 독립 표본 검정 정리

안녕하세요! 저번 글에 이어 이번 글에서는 통계 분석에서 자주 사용되는 대응(쌍체) 표본 검정과 독립 표본 검정에 대해 정리해보았습니다. t 검정의 종류 중 단일 표본 검정은 이전 글에서 정

actshiny.com

범주형 데이터 분석: 카이제곱 검정 (Chi-Square Test) 소개 이미지

반응형