안녕하세요! 이번 글에서는 범주형 데이터 분석에서 사용하는 대표적인 통계적 방법인 카이제곱 검정에 대해 알아보겠습니다.
카이제곱 검정은 관측된 데이터가 기대치와 얼마나 일치하는지, 두 변수 간의 관계나 여러 집단 간의 차이를 평가하는 데 매우 유용한 도구입니다.
카이제곱 검정에는 크게 적합도 검정, 독립성 검정, 동질성 검정의 세 가지 유형이 있으며, 각 유형에 대해 자세히 살펴보겠습니다.
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: 귀무가설 기각, 두 집단의 분포가 다름 |
추가로 카이제곱 검정 결과를 보다 잘 이해하기 위해 시각 자료를 사용하는 것이 좋다. 교차표나 적합도 검정 결과 그래프는 데이터의 분포를 쉽게 파악하는 데 도움이 된다.
혹시 이해가 어려우시다면, 이전 글을 먼저 참고해보시면 좋을 것 같습니다.
반응형
'IT & AI > AI 지식' 카테고리의 다른 글
분산 분석(ANOVA): 일원 분산 분석, 이원 분산 분석 (0) | 2024.12.07 |
---|---|
회귀 분석: 단순 선형 회귀 분석, 다중 선형 회귀 분석 (1) | 2024.12.06 |
대응 표본 검정, 독립 표본 검정 정리 (1) | 2024.12.04 |
가설 검정의 이해와 프로세스, 단일 표본 검정 (0) | 2024.12.03 |
SQL 최적화 인덱스, 분산 데이터베이스, 그리고 PL/SQL (0) | 2024.12.02 |