Kruskal–Wallis 검정
세 집단 이상을 순위로 비교
세 가지 교육 방식 중 어떤 방식이 학생들의 만족도와 관련해 차이를 보이는지 알아보고 싶다고 가정해 보겠습니다. 독립표본 t검정은 두 집단을 비교할 때 쓰는데, 집단이 세 개 이상이라면 어떻게 해야 할까요? Kruskal–Wallis 검정은 서로 독립인 세 집단 이상을 비교하는 비모수 검정입니다. 모든 집단의 관측값을 합쳐 순위를 매긴 다음, 집단별 순위가 얼마나 다르게 분포하는지 분석합니다. 일원분산분석(One-way ANOVA)의 비모수 대안으로 자주 소개되지만, 두 방법이 검정하는 대상과 가정은 서로 다릅니다.
Kruskal–Wallis 검정이란?
Kruskal–Wallis 검정은 세 개 이상의 독립집단에서 관측값의 분포가 같은지 평가하는 방법입니다. 다음과 같은 연구에 쓸 수 있습니다.
세 가지 교육 방식에 따른 학생 만족도 비교
세 종류의 제품에 대한 고객 평가 비교
세 개 이상의 독립적인 치료 집단의 결과 비교
서로 다른 매장 유형에서 측정한 대기시간 비교
이 검정은 집단별 평균을 직접 비교하기보다 전체 관측값의 순위를 씁니다. 교육 방식 A, B, C를 각각 경험한 서로 다른 학생들의 만족도를 하나로 합쳐 순위를 매기고, 각 집단이 높은 순위와 낮은 순위를 얼마나 차지하는지 봅니다. 두 집단을 비교하는 Mann–Whitney U 검정(04장)을 세 집단 이상으로 넓힌 것이라고 생각하면 됩니다.
단, 세 조건을 같은 사람에게 반복해서 측정한 자료라면 Kruskal–Wallis 검정이 아니라 Friedman 검정(07장)을 고려해야 합니다.
검정의 원리: 전체 순위와 집단별 순위 비교
그림 1의 점수를 표로 정리하면 다음과 같습니다. 각 집단에는 서로 다른 학생 3명씩이 있습니다.
| 교육 방식 A | 교육 방식 B | 교육 방식 C |
|---|---|---|
| 4 | 2 | 7 |
| 5 | 3 | 8 |
| 6 | 4 | 9 |
먼저 아홉 개 점수를 모두 합쳐 작은 순서로 정렬하고 순위를 매깁니다. 점수 4가 두 번(A와 B) 나오므로 두 자리(3, 4번째)의 평균 3.5를 똑같이 줍니다(02장 2절).
이제 집단별 순위합과 평균 순위를 계산합니다.
| 집단 | 표본 크기 | 순위합 Rj | 평균 순위 |
|---|---|---|---|
| A | 3 | 14.5 | 4.83 |
| B | 3 | 6.5 | 2.17 |
| C | 3 | 24 | 8.00 |
순위 1~9의 평균은 5입니다. 세 집단의 분포가 같다면 집단별 평균 순위도 모두 5 근처에 있어야 합니다. 그런데 C는 8.00으로 훨씬 높고 B는 2.17로 훨씬 낮습니다. 이 예시에서는 C의 점수가 전체적으로 높은 순위에 놓여 있습니다. 하지만 평균 순위가 다르다는 사실만으로 유의하다고 결론 내릴 수는 없습니다. 이를 평가하기 위해 Kruskal–Wallis 검정통계량을 계산합니다.
검정통계량 계산
Kruskal–Wallis 검정의 기본 통계량은 다음과 같습니다.
N: 전체 관측값 수 · k: 집단 수 · nj: j번째 집단의 크기 · Rj: j번째 집단의 순위합
식이 복잡해 보이지만, 하는 일은 "집단별 평균 순위가 전체 평균 순위(5)에서 얼마나 멀리 흩어져 있는가"를 재는 것입니다. 세 집단의 평균 순위가 모두 5라면 H는 0이고, 멀리 흩어질수록 커집니다. 예시에서는 N = 9, k = 3이므로 다음과 같습니다.
계산 결과는 H ≈ 6.82입니다. 같은 점수(4)가 있으므로 실제 검정에서는 동순위 보정을 해야 하고, 보정하면 H ≈ 6.88가 됩니다. 표본이 충분히 크면 H는 자유도 k − 1인 카이제곱분포로 근사해 p값을 구합니다. 이 예시에 적용하면 p ≈ 0.032이지만, 집단당 3명은 근사를 쓰기엔 작은 표본입니다. 표본이 작거나 동점이 많으면 정확검정이나 순열검정 등 다른 방법을 고려합니다.
가설 설정과 p값 해석
Kruskal–Wallis 검정의 일반적인 가설은 다음과 같습니다.
세 집단을 비교한 결과가 다음과 같다고 가정하겠습니다.
| 항목 | 결과 |
|---|---|
| 집단 수 | 3 |
| 전체 표본 크기 | 90 |
| H 통계량 | 8.12 |
| 자유도 | 2 |
| p값 | 0.017 |
그림 4처럼 자유도 2인 카이제곱분포에서 8.12보다 오른쪽 넓이가 p = 0.017입니다. 유의수준 0.05의 경계값(5.99)보다 H가 크므로 귀무가설을 기각합니다. 세 집단의 분포가 모두 같다는 가정에 반하는 통계적 근거가 있다는 뜻입니다.
그러나 이 결과만으로 어느 집단과 어느 집단 사이에 차이가 있는지는 알 수 없습니다. "적어도 한 집단이 다르다"는 것을 확인했을 뿐이므로, 구체적인 차이는 사후검정으로 확인해야 합니다. 또한 p값은 차이의 크기를 나타내지 않으므로 효과크기도 함께 확인합니다(7절).
사후검정: 어느 집단이 다른가?
Kruskal–Wallis 검정이 유의하다면 다음 단계는 집단 쌍을 하나씩 비교하는 것입니다. 대표적인 방법은 Dunn 검정입니다. A, B, C 세 집단이라면 A–B, A–C, B–C 세 쌍을 비교합니다. 이렇게 여러 번 검정하면 우연히 유의하게 나올 기회도 늘어나므로(다중비교 문제), Holm 보정이나 Bonferroni 보정 같은 방법으로 p값을 조정합니다.
그림 5는 집단당 30명의 모의 데이터로 이 흐름을 실제로 계산한 것입니다. 전체 검정이 유의했고(H = 8.05, p = 0.018), Holm 보정을 적용한 Dunn 검정에서는 A와 C 사이만 유의했습니다(보정 p = 0.015). A–B(0.157)와 B–C(0.295)는 유의하지 않았습니다. 즉 "세 집단이 모두 다르다"가 아니라 "A와 C가 다르다"가 결론입니다.
사후검정 결과를 보고할 때는 비교한 집단 쌍, 보정된 p값, 집단별 기술통계량을 함께 제시하면 결과를 더 명확하게 이해할 수 있습니다. 다중비교 보정은 분산분석의 사후검정(「사후검정과 다중비교」)과 같은 원리입니다.
Kruskal–Wallis 검정과 일원분산분석 비교
| 구분 | Kruskal–Wallis 검정 | 일원분산분석(One-way ANOVA) |
|---|---|---|
| 분석 방식 | 전체 관측값의 순위 사용 | 관측값의 실제 수치 사용 |
| 주요 비교 대상 | 집단별 분포 | 집단별 평균 |
| 정규분포 관련 조건 | 정규분포를 직접 요구하지 않음 | 일반적인 모형에서는 오차의 분포와 표본 크기 등을 고려 |
| 독립성 | 필요 | 필요 |
| 유의한 결과 이후 | Dunn 검정 등 | Tukey HSD 등 |
| 주요 주의점 | 분포 차이를 평균 차이로 해석할 수 없음 | 평균 차이 검정의 가정과 자료 구조 확인 필요 |
Kruskal–Wallis 검정은 정규분포를 직접 요구하지 않지만, 가정이 전혀 없는 것은 아닙니다. 관측값의 독립성 등은 여전히 중요합니다. 또한 세 집단의 분포 모양과 퍼짐이 비슷하다면 결과를 위치 차이로 해석하기 자연스럽지만, 모양이나 퍼짐이 크게 다르면 유의한 결과가 중앙값 차이만을 뜻하지는 않습니다(04장 5절). 따라서 정규성 검정 결과만으로 방법을 정하기보다 연구 질문, 측정 수준, 이상치, 분포 모양을 함께 고려해야 합니다.
효과크기와 결과 보고
통계적 유의성만으로는 집단 간 차이가 얼마나 큰지 알기 어렵습니다. 자주 쓰는 효과크기 중 하나는 η²H입니다.
4절 예시: (8.12 − 3 + 1) / (90 − 3) ≈ 0.070
그림 6처럼 4절 예시의 효과크기는 약 0.07입니다. 유의하긴 하지만 큰 효과는 아닙니다. 다만 이 값을 "만족도 변동의 7%를 설명한다"처럼 회귀의 R²로 읽으면 안 됩니다(08장 4절). 다만 효과크기 공식은 문헌과 소프트웨어에 따라 정의가 다르므로 어떤 지표와 공식을 썼는지 밝혀야 합니다. 작은 표본에서는 값이 음수로 나오는 등 해석에 주의가 필요한 경우도 있습니다.
결과를 보고할 때는 집단별 표본 크기, 집단별 중앙값과 사분위범위, H 통계량·자유도·p값, 필요하면 효과크기, 유의한 경우 사후검정 결과와 다중비교 보정 방법을 함께 제시하는 것이 좋습니다. 예를 들어 다음과 같이 씁니다.
세 가지 교육 방식에 따른 만족도 분포를 Kruskal–Wallis 검정으로 비교한 결과, 집단 간 차이가 통계적으로 유의했다(H(2) = 8.12, p = .017, η²H = .07). 구체적으로 어떤 집단 쌍에서 차이가 나타나는지 확인하기 위해 Holm 보정을 적용한 Dunn 사후검정을 수행했다.
실제 보고서에서는 위 문장의 통계량과 p값을 실제 분석 결과로 바꿔야 하며, 사후검정 결과를 확인하기 전에는 특정 집단이 더 우수하다고 단정하지 않아야 합니다.
분석할 때 확인할 사항
각 집단의 관측값이 서로 독립적인가?
비교할 집단이 세 개 이상인가?
관측값에 의미 있는 순서를 매길 수 있는가?
같은 값이 많다면 동순위 보정이 적용되는가?
분포 차이로 해석할지, 위치 차이로 해석할지 명확한가?
유의한 결과 이후 쌍별 비교와 다중비교 보정을 했는가?
같은 참가자를 세 가지 조건에서 반복 측정했다면 관측값이 독립이 아니므로 Kruskal–Wallis 검정 대신 Friedman 검정을 고려해야 합니다.
Kruskal–Wallis 검정은 세 집단 이상의 순위를 비교해 집단 간 차이를 확인합니다.
- Kruskal–Wallis 검정은 서로 독립된 세 집단 이상의 분포를 비교하는 비모수 검정입니다.
- 전체 관측값에 순위를 매긴 뒤 집단별 평균 순위를 비교합니다. H 통계량은 집단 간 순위 차이가 얼마나 큰지를 나타냅니다.
- 검정 결과가 유의하더라도 어느 집단 사이에 차이가 있는지는 알 수 없습니다. 이를 확인하려면 Dunn 사후검정과 다중비교 보정을 실시해야 합니다.
- 집단별 분포의 모양과 퍼짐 정도가 비슷하다면 검정 결과를 집단 간 위치 차이로 해석할 수 있습니다.
- 결과를 보고할 때는 p값뿐 아니라 집단별 중앙값과 사분위범위, 평균 순위, 효과크기를 함께 제시하는 것이 좋습니다.
다음은 07 Friedman 검정입니다. 동일한 참가자를 세 가지 이상의 조건에서 반복 측정한 경우, 참가자별 측정값의 대응 관계를 고려하여 조건 간 차이를 비교하는 방법을 알아봅니다.
Kruskal–Wallis 검정은 세 집단 이상의 관측값에 순위를 매기고, 집단별 평균 순위가 얼마나 차이 나는지 H 통계량으로 확인합니다(예제 H ≈ 6.82). 검정 결과가 유의하다면 Dunn 사후검정과 다중비교 보정을 통해 차이가 나타난 집단을 확인합니다. 또한 효과크기 η²H를 함께 보고하여 집단 간 차이의 크기를 살펴봅니다.