본문 바로가기
의학통계/통계분석

독립된 3개이상의 집단 비교 - ANOVA 와 Kruskal Wallis Test

by boogler 2022. 6. 21.
반응형

독립된 3개이상의 집단 비교 - ANOVA 와 Kruskal Wallis Test

 

독립인 3개 이상의 그룹의 평균 비교에서, Y(=response variable)이 연속형인 경우 모수적 방법으로는 ANOVA(=Analysis of Variance), 비모수적 방법으로는 Kruskal-wallis test 가 있습니다. Normality 위배로 data transformation 후 ANOVA를 실행했다면 주로 데이터는 mean과 SD 대신 Interquartile range(IQR)로 표현해 줍니다.


1. 독립인 3개 집단 이상의 모수적 비교 (one-way ANOVA)

ANOVA는 아래 3가지 가정을 만족해야 합니다.

 

- 각 집단은 서로 independent 해야한다.

- Y(=response)는 normally distributed 되어야한다.

- 각 집단은 Equal variance 를 가진다.

 

Ex. BMI 그룹을 <25 / <27 / 27이상으로 1,2,3 의 3개 그룹으로 나누고, 3개 그룹간의 Total Cholesterol의 차이가 유의하게 있는지 테스트 해 봅니다.

 

<SAS Code>

 

- Equal Variance Check (homogeneity of variance test)

 

ANOVA를 실행하는 glm procedure의 means statement에 hovtest option을 적어주면 됩니다.

default 로 Laven's test (type=square)을 실행합니다. 가장 흔히 쓰는 옵션으로 그냥 사용하셔도 무방합니다.

 

proc glm data=test.test_data;
    class bmi_group;
    model tchl=bmi_group;
    means bmi_group/hovtest;
run;

 

- ANOVA

 

여러개의 변수의 ANOVA 결과를 표로 작성할때 glm output을 받는 방법입니다. a0에는 bmi_group 별 tchl(total_cholestrol) mean 값이 m0에는 p-value가 기록됩니다.

 

proc glm data=test.test_data;
    class bmi_group;
    model tchl=bmi_group;
    means bmi_group;
    ods output means= a0 ModelANOVA=m0;
run;

 

<SAS Output>

Ho : Equal variance 로 p-value=0.6849 로 Ho를 기각하지 않으므로 Equal variance 가정을 만족한다고 할 수 있습니다.

 

3개 BMI 그룹간의 Total Cholesterol(=Tchl)의 차이는 p-vaue <.0001로 유의하며 그룹간 mean의 차이는 위의 표와 같다.

 

2. 독립인 3개 집단 이상의 비모수적 비교 (Kruskal Wallis Test)

Kruskal-wallis test는 one-way ANOVA의 비모수 방법으로 보시면 되며, Wilcoxon rank sum test와 동일 Sas Code를 사용합니다.

 

<SAS Code>

 

proc NPAR1WAY data=test.test_data wilcoxon;
    class bmi_group;
    var tg;
run;

 

<SAS Output>

 

p-value <.0001로, 3개의 BMI 그룹간 Tg(중성지방)의 차이는 유의합니다.

 

댓글