본문 바로가기
Data_Analysis/SAS

[SAS] 범주형 자료분석

by Classic! 2021. 1. 7.

성별, 직업, 선호도 같이 수치적으로 연속성을 가지고 있지 않은 범주형 자료의 경우 연속형 자료와 다른 분석 방법이 필요합니다. 이번 포스팅에서는 범주형 자료를 아래와 같은 방법으로 자료를 분석하고자 합니다. 

1. 도수분포표 및 분할표

2. 적합도 검정

3. 독립성 검정

4. 동질성 검정


1. 도수분포표 및 분할표

범주형 자료의 분포를 살펴보기 위해 SAS의 FREQ 프로시저를 이용합니다.

1) 1개 특성의 분포

1) FREQ */
/* 1개 특성의 분포표 */
PROC FREQ DATA=SASHELP.HEART;
  TABLES Smoking_Status;
RUN;

[결과]

- 전체 관찰 대상 중 흡연 정도에 따라 분포 빈도와 비율을 살펴봅니다.

- 우선은 Non-smoker비율이 약 48%로 비흡연자의 비율이 흡연자(Non-smoker를 제외한 나머지의 합)의 비율보다 근소하게 적습니다.

- 또한 흡연자 중에서는 Heavy(16~25)의 비율이 가장 높습니다.

2) 2개 특성의 분포

/* 2개 특성의 교차분포 */
PROC FREQ DATA=SASHELP.HEART;
  TABLES Status*Smoking_Status;
  TABLES Status *Sex;
RUN;

[결과]

- Status*Smoking_Status 테이블에서 생존 상태를 행으로, 흡연 상태를 열로 비교했습니다.

Status*Sex 테이블에서는 생존 상태를 행으로, 성별을 열로 비교했습니다.

- 첫 번째 테이블로 열 백분율을 살펴봅시다.

Non-smoker 중에서 Alive인 사람은 64.37%, Dead인 사람은 35.63%로 큰 차이를 보이는 반면, 

Very Heavy (> 25) 중에서 Alive인 사람은 49.68%, Dead인 사람은 50.32%로 거의 차이가 없습니다.

- 두 번째 테이블로 행 백분율을 살펴봅시다.

Alive인 사람 중 여자는 61.44%, 남자는 38.56%,  Dead인 사람 중 여자는 45.00%, 남자는 55.00%입니다.

 

 

3) 3개 특성의 분포

/* 3개 특성 : 흡연여부와 사망여부 & 몸무게와 사망여부*/
PROC FREQ DATA=SASHELP.HEART;
  TABLES (Smoking_Status Weight_Status)*Status;
RUN;

[결과]

- 위 코드는 Status*Smoking_Status 테이블과 Status*Weight_States을 보여줍니다.

 

 

 

2. 적합도 검정

크기 N의 관측치를 X개의 범주로 분류했을 때 각 관측치들이 각각의 그룹에 속할 확률이 알려져 있는 경우, 실제로 이러한 형태대로 관측값들이 분류되었는지 검정하는 방법입니다.

- TESTP=(확률1,확률2,...) : Smoking_Status의 범주는 5개, 5개 범주 각각의 기대 확률을 지정. 기대 확률 합은 1.

- TESTF=(빈도수1,빈도수2,...) : Smoking_Status의 범주는 5개, 5개 범주 각각의 기대 빈도수를 지정. 빈도수 합은 전체 자료수와 일치.

아래 예시에서는 모두 동일한 비율로 구성되어 있다고 가정했습니다.

/* 아래 예시 : 흡연 상태별 인원수가 의미있게 차이나는지 */
PROC FREQ DATA=SASHELP.HEART;
  TABLES Smoking_Status/TESTP=(0.2 0.2 0.2 0.2 0.2);
RUN;

[결과]

- 각 범주의 실제 비율은 (20.22%, 11.19%, 11.13%, 48.35%, 9.10%)으로 검정 백분율 20%과 차이를 보입니다.

- Chi-square의 유의 확률도 <0.0001로 귀무가설을 기각하며 각 범주의 백분율이 20%으로 동일하다고 할 수 없습니다.

 

 

 

3. 독립성 검정

2개의 특성 사이의 연관관계 유무를 파악하기 위한 검정 방법입니다. 두 특성 간 연관성이 없다면 서로 독립이라고 할 수 있습니다.

범주형 자료의 연관성의 척도로는 파이 계수, 크래머 V 등이 있습니다.

변수 형태 연관성 측도 특성 범위 및 의미
순서형 감마 행렬의 수와 무관 -1~1 사이의 값을 가진다.
절대값이 클수록 변수 간의 연관성이 크다.
Kendal의 타우-b 분할표의 행과 열의 수가 같은 경우에 유용
Kendal의 타우-c 분할표의 행과 열의 수가 다른 경우에 유용
Somers D Kendal의 타우-b의 비대칭 관계를 고려하여 수정
범주형 파이계수 분할표가 2X2인 경우 유용 일반적으로 0과 1사이에 존재.
값이 클수록 변수 간의 연관성도 크다.
크래머 V 분할표가 2X2 외 경우 유용
우발성 계수 같은 크기의 분할표에 유용
람다 대칭/비대칭 람다값을 분할표의 변수 사이의 관계에 기초하여 분석
불확실 계수 엔트로피에 기초한 측도
/* 흡연상태 데이터를 흡연(Y), 비흡연(N)으로 나눔*/
DATA WORK.HEART_SMOKE;
  SET SASHELP.HEART;
  Smoking_YN="Y";
  IF Smoking_Status="Non-smoker" THEN Smoking_YN="N";
RUN;

/* 흡연 여부와 성별 특성의 독립성 검정 */
PROC FREQ DATA=HEART_SMOKE;
  TABLES Smoking_YN*SEX/CHISQ;
RUN;

[결과]

- Chi-square의 유의확률은 <0.0001로 귀무가설을 기각하여 연관성이 없다고 할 수 없으며,

파이 계수, 우발성 계수, 크래머의 V는 약 0.2로 연관성이 낮다 판단할 수 있습니다.

 

 

 

4. 동질성 검정

어떤 특성에 대한 자료의 분포가 동일한지 검정하는 방법으로 독립 검정과 유사하나, 자료를 얻는 방법에서 차이가 있습니다. 동질성 검정은 전체 자료를 검정하려는 특성에 따라 먼저 분류한 후 각 범주별로 정해진 수만큼의 자료를 조사하여 각 범주별로 비율이 다른지 검정합니다.

- 독립성 검정 코드에서 MEASURE 옵션을 추가하여 연관성 측도를 출력합니다.

PROC FREQ DATA=HEART_SMOKE;
  TABLES Smoking_YN*SEX/CHISQ NOPERCENT MEASURES;
RUN;

[결과]

- Chi-square, 파이 계수, 우발성 계수, 크래머의 V 등 통계량은 독립성 검정의 결과와 동일합니다.

- 연관성 측도와 오즈비 및 상대 리스크가 추가로 산출됩니다.

'Data_Analysis > SAS' 카테고리의 다른 글

[SAS] PROC FREQ  (1) 2021.02.09
[SAS] PROC TABULATE  (0) 2021.01.28
[SAS] 기술통계량 산출 및 정규성 검정  (0) 2021.01.04
[SAS] 자료 행 분할  (0) 2020.12.01
[SAS] Macro  (0) 2020.11.23

댓글