30. 교차 분석과 카이 제곱 검정
in Study on R Programming
Overview
교차 분석은 두 개 이상의 범주형 변수를 대상으로 교차 분할표를 작성하고, 변수 상호 간의 관련성 여부를 분석하는 방법이다.
교차 분석은 특히 빈도 분석 결과에 대한 보충 자료를 제시하는데 효과적으로 이용할 수 있다.
또한 카이 제곱 검정은 교차 분석으로 얻어진 교차 분할표를 대상으로 유의 확률(p-value)을 적용하여 변수들 간의 독립성 및 관련성 여부 등을 검정하는 분석 방법이다.
교차 분할표
교차 분할표를 만들기 위해서는 table()
함수를 사용하면 된다.
반환 값은 table 인스턴스의 분할표이다.
분할 표에는 값이 배열 형태로 저장이 되어 있다.
사용형식 :
table(x, useNA = 'always') # useNA : NA도 포함
X : Factor로 해석할 수 있는 하나 이상의 객체(data.frame etc.)
교차 분할 표 예시
# table 함수를 이용하여 교차 분할표를생성한다.
# 부모의 학력과 자녀의 대학 합격 여부에 대한 교차 분할표
table(result)
# Pass
# Level fail pass
# 고졸 4049
# 대졸 2755
# 대학원졸 23 31
교차 분할표 관련 패키지
gmodels 패키지에는 교차 분할표를 좀더 세밀하게 보여주는 함수가 있다.
패키지 설치
from install.packages("gmodels")
library(gmodels)
CrossTable()
교차 분석을 위하여 사용할 수 있는 함수
chisq
옵션을 이용하여 카이 제곱 검정을 수행할 수 있다.
항목 | 설명 |
---|---|
사용 형식 | CrossTable(x, y, prop.chisq = FALSE, prop.t = FALSE, prop.r = FALSE, dnn = c('predicted', 'actual')) |
x, y | 교차하고자 하는 데이터를 지정 예) 분류 문제에서 x 는 정답을 의미하는 label , y 는 예측 값을 의미하는 prediction 지정 |
chisq | 카이 제곱 검정을 수행할 때 True 사용 |
prop.t | True : 테이블 비율(proportion table)을 포함 |
prop.r | True : 행 비율(proportion row)을 포함 |
dnn | dimnames names 을 사용자 정의 형식으로 부여할 때 사용 |
CrossTable() 함수 사용 예시
교차 분할표 범례
- 관측된 데이터 수 : 40 + 49 = 89
- 기대 값 및 기대 비율
- 부모 학력이 고졸이고, 자녀가 합격인 경우
- 기대값 = (고졸 소계)(합격 소계)/(총계) = 89135/225 = 53.4
- 기대 비율 = \(\sum\)(관측값 - 기대값)\(^2\) / 기대값 = (49 - 53.4)\(^2\) / 53.4 = 0.362546816
- 부모 학력이 대졸이고, 자녀가 실패인 경우
- 기대값 = (대졸 소계)(실패 소계)/(총계) = 8290/225 = 32.8
- 기대 비율 = \(\sum\)(관측값 - 기대값)\(^2\) / 기대값 = (27 - 32.8)\(^2\) / 32.8 = 1.025609756
- 부모 학력이 고졸이고, 자녀가 합격인 경우
- 현재 행의 비율 = 89 / ( 89 + 82 + 54 )
- 현재 열의 비율 = 49 / ( 49 + 55 + 31 )
- 전체 비율에서 현재 셀이 차지하는 비율 = 49 / ( 40 + 49 + 27 + 55 + 23 + 31 )
- 고졸 합격율
논문/보고서에서 교차 분할표 해석
학력 수준에 상관없이 대학 진학 합격률이 평균 60.0%로 학력 수준별로 유사한 결과가 나타났다.
전체 응답자 225명을 대상으로 고졸 39.6%(89명) 중 55.1%가 진학에 성공하였고, 대졸 36.4%(82명) 중 68.4%가 성공했으며, 대학원졸은 24%(54명) 중 57.4%가 대학 진학에 성공하였다.
특히 대졸 부모의 대학 진학 합격율이 평균보다 조금 높고, 고졸 부모의 대학 진학 합격율이 평균보다 조금 낮은 것으로 분석이 된다.
교차 분석(카이 제곱 검정)
카이 제곱을 설명하기 전에 다음 항목을 살펴본다.
주사위를 60번 던졌을 때 결과가 다음과 같다고 가정한다.
주사위 눈금 | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
관측도수 | 4 | 6 | 17 | 16 | 8 | 9 |
기대도수 | 10 | 10 | 10 | 10 | 10 | 10 |
눈금의 기대치는 10번인데 위 결과에는 8번이 나왔다.
이와 같이 범주별로 관측 빈도와 기대 빈도의 차이를 통해 확률 모형이 데이터를 얼마나 잘 설명해줄 수 있는지를 검정하는 통계적 방법을 카이 제곱 검정이라고 한다.
범주형 자료를 대상으로 변수들에 대한 관련성을 알아보기 위해 교차 분할 표를 만든다.
이와 같이 범주형 자료를 대상으로 2개 이상의 변수들에 대한 상화 관련 여부를 분석하는 방법이다.
교차 분석은 카이 제곱 검정 통계량을 사용하므로 카이 제곱 검정이라고 한다.
특징
- 빈도 분석의 특성별 차이를 분석하기 위해 수행하는 방법
- 빈도 분석 결과에 대한 보충 자료를 제시하는 데 효과적이다
- 참조 문서 : 기술 통계량, 척도의 분류
고려사항
- 변수는 10 미만인 범주형 변수(명목, 서열 척도)
- 비율 척도는 코딩 변경(리코딩)을 이용하여 범주형 자료로 변경
- 예) 10~19(10 대), 20~29(20 대), 30~39(30 대) etc.
변수 모델링
- 분석할 속성(변수)을 선택하여 속성간 관계를 설정하는 작업
- 예)
- 교육 수준(education, 독립 변수)과 흡연률(smoking, 종속 변수)의 연관성을 분석하는 경우
- education \(\to\) smoking 의 형식으로 표기
카이 제곱의 유형
카이 제곱 검정 유형은 교차 분할표를 사용하느냐에 따라 크게 일원 카이와 이원 카이 제곱 검정으로 분류가 된다.
변수 | 교차 분할표 사용 여부 | 주용도 | |
---|---|---|---|
일원 | 1개 | X | 적합도 검정, 선호도 분석 |
이원 | 2개 | O | 독립성 검정, 동질성 검정 |
일원 카이 제곱 검정
교차 분할표을 이용하지 않는 카이 제곱 검정으로 한 개의 변인(집단 또는 범주)을 대상으로 검정을 수행한다.
관찰 도수가 기대 도수와 일치하는지 검정하는 적합도 검정(test for goodness of fit)이 여기에 속한다.
항목 | 설명 |
---|---|
적합도 검정 | 관측치와 기대치가 일치하는 지를 조사하는 것을 의미 예) 주사위의 눈금의 확률은 각각 1/6(게임에 적합한가?) |
선호도 분석 | 관측치와 기대치가 일치하는 지를 조사하는 것을 의미 적합도와 차이점은 필요한 연구 환경과 자료 예) 스포츠 음료에 대한 선호도에 차이가 없음 |
이원 카이 제곱
교차 분할표를 이용하는 카이 제곱 검정으로 두 개 이상의 변인(집단 또는 범주) 대상으로 검정을 수행한다.
분석 대상의 집단 수에 의해서 독립성 검정과 동질성 검정으로 나누어진다.
항목 | 설명 |
---|---|
독립성 검정 | 관련성 검정 두 변수를 대상으로 관련성의 유무를 검정하는 방법 예) 경제력과 대학 진학률의 관련성 예) 흡연과 폐암의 연관성 예) 회사에서 나이와 직위의 연관성 |
동질성 검정 | 두 집단의 분포가 동일한 모집단에 추출된 것인지를 검정 즉, 동일한 분포를 갖는 모집단에서 추출된 것인지를 검정 예) 직업의 유형에 따른 만족도의 차이 |
카이 제곱 함수
변수간 독립성 검정에는 카이 제곱 검정을 수행한다.
2개의 데이터간 의존 관계 유무를 검정하는 수단이다.
항목 | 설명 |
---|---|
사용형식 | chisq.test(x, y = NULL, p) |
x | 숫자벡터 또는 행렬, 또는 x, y 모두 Factor |
y | 숫자 벡터 또는 x 가 Factor인 경우 Factor로 지정x 와 같은 길이를 가질 확률이 값이 지정되어 있지 않으면 확률이 서로 같은지 테스트 |
p | 이 매개 변수가 입력이 되지 않으면 모든 확률이 동일하다고 가정rep(1/length(x), length(x)) x 가 5개일 때 rep(0.2, 5) , 5개 모두 확률이 0.2를 뜻함 |
카이 제곱 함수의 결과 정보
카이 제곱 함수의 결과 정보는 다음과 같은 항목들이 존재한다.
항목 | 설명 |
---|---|
X-squared | 검정 통계량 \(x^2\) = \(\sum\)(관측값 - 기댓값)\(^2\) / 기댓값 카이 제곱 검정 통계량 >= 분포표 결과 값 이면 귀무 가설을 기각“카이 제곱 검정 통계량”은 카이 제곱 검정 표를 참고 |
df | 자유도(degree of freedom) 일원 카이 제곱에서 N-1 개교차 분할표에서 자유도(df) = (행수-1) * (열수-1) |
p-value | 유의 확률(p-value) > 0.05 일 때 귀무 가설 채택 |
카이 제곱 검정 통계표
교차 분석과 검정 보고서 작성
카이 제곱 검정은 교차 분석으로 얻어진 교차 분할표를 대상으로 유의 확률을 적용하여 변수들 간의 독립성(관련성) 여부를 검정한다.
논문이나 보고서에서는 다음과 같이 교차 분할표와 카이 제곱 검정 통계량을 함께 제시한다.