Kruskal-Wallis検定


Charcot(@StudyCH)です。

今回ご紹介するKruskal-Wallis(クラスカル・ウォリス)検定は、3つ以上のグループ間に差があるかどうかを知りたい時に用いるノンパラメトリックな手法の検定です。

一元配置分散分析が3つ以上の標本(または変数)の平均の差を検定するのに対し、Kruskal-Wallis検定は3つ以上の標本(または変数)の中央値の差を検定します。ここではKruskal-Wallis検定の特徴をSPSSを使った実践例も含めてわかりやすく説明します。

どんな時にこの検定を使うか

要因が1で水準が3つ以上の時に、水準間である変数の中央値の差を知りたい場合にKruskal-Wallis検定を行います。例えば標本を脳梗塞の初発、2回目、3回目で分けたとすると「脳梗塞の発症回数」が「要因」になります。また「初発、2回目、3回目」の各項目が「水準」となります。

この例の場合、水準の数は3つなので、脳梗塞の発症回数が初発、2回目、3回目の人たちの間で、発症時年齢に差があるかどうかを知りたい時にはKruskal-Wallis検定を使って水準間のいずれかに差があるかを検定します。

使用できるデータの尺度や分布

正規分布に従わずに、尺度水準が比率尺度、間隔尺度、順序尺度のデータを用いることができます。3つ以上の水準(標本)のデータが適用となります。もし、正規分布に従うデータであればパラメトリック検定である一元配置分散分析を使うことになるので注意して下さい。

つまり、この検定は主に正規性を仮定できない場合や外れ値を多く含む場合、サンプルサイズが小さい場合などに用いられる検定といえます。

検定結果の指標

検定結果の指標はp 値を用います。95%信頼区間の場合は p < 0.05 で、99%信頼区間の場合は p < 0.01 で有意差があると判断できます。

実際の使用例(SPSSの使い方)

模擬データを使ってSPSSによるKruskal-Wallis検定を実践してみましょう。K病院に入院中の脳卒中患者の発症回数と発症年齢データが手元にあるとします。発症回数は初発、2回目、3回目の3水準です。

一元配置分散分析でも同じようなデータを使用していますが、このデータは正規分布に従っていません。それでは水準間で発症年齢に差があるかを実際に検定してみます。

この例では帰無仮説と対立仮説を以下のように設定します。

帰無仮説 (H0) :初発の年齢中央値 = 2回目の年齢中央値 = 3回目の年齢中央値
対立仮説 (H1) :H0が成り立たないとき

  1. データをSPSSに読み込みます。この時、3群のデータを2列に並べるのではなく、発症回数の列を作り、次の列に対応する発症年齢の値を入れます(下図)


  2. メニューの「分析 → ノンパラメトリック検定 (N) → 過去のダイアログ (L) → K個の独立サンプルの検定 (K)…」を選択します(下図)


  3. 「発症時年齢」を検定変数リスト (T) に、「発症回数」をグループ化変数 (G) に「↪」で移動させます(下図①)
  4. 「範囲の定義 (D)...」をクリックすると「範囲の定義」ダイアログが出現します。「最小 (N)」と「最大 (X)」の値、つまり変数の最大値と最小値を入力して下さい(下図②)
  5. 「続行」で「範囲の定義」ダイアログを閉じたら、「検定の種類」でKruskal-WallisのH(K)にチェックが付いていることを確認します(下図③)
  6. 「OK」ボタンを押せば検定が開始します(下図4)


  7. 結果のダイアログがでたら、「漸近有意確率」が p < 0.05を満たしているかを確認します。p < 0.05を満たしていれば水準間に有意差ありとなります(下図)

今回の結果では、漸近有意確率が「.000」でp < 0.001を満たしているので、帰無仮説が棄却(否定)されました。つまり、この結果から発症回数(水準)間の年齢に有意差があると結論できます。

まとめ

Kruskal-Wallis(クラスカル・ウォリス)検定は、正規分布に従わないデータに対して、3つ以上の水準間の差を比較したいと時に使用します。

Kruskal-Wallis検定は、Wilcoxon検定Mann-Whitney検定と同様に順位をつけて水準間の差を検定するノンパラメトリックな手法です。正規分布に従うデータについては一元配置分散分析を用いるようにして下さい。

その他の統計学的検定一覧