エクセル関数を使ったマンホイットニーのU検定のやり方【コピペ用テンプレートあり】

はじめに
エクセル関数を使った、
下にテンプレート(セルデータサンプル)があるので、
マンホイットニーのu検定とは
マンホイットニーのU検定とは、「2つの母集団の分布の中央値に有意差があるか」を判定する統計的仮説検定の1つです。
いつ使うのか?
マンホイットニーのU検定は、以下のような場合に使用します。
- カテゴリデータでない
- データが正規分布していない、または外れ値が大きい(間隔・比率尺度データのとき)
- データが独立した2群(グループ)
マンホイットニーのU検定は、
- 2群の両方のサイズ n ≧ 8
- 2群の内の片方のサイズ n ≧ 21
算出値の意味
仮説検定では、 p値 を算出し、 有意水準α と比較を行います。 NORMSDIST
関数を使って得られます。
p値 と 有意水準α による判定は以下の通りです。
- p値 < α のとき: 各群の母集団の中央値の間に有意差が ある
- p値 ≥ α のとき: 各群の母集団の中央値の間に有意差が ない
エクセルでの算出方法
以下の 全セルをコピー
ボタンをクリックし、エクセルの A1
セルに貼り付けると、 K16
セルにp値(下記の場合 0.031449255
)、 K19
セルに検定結果(下記の場合 (有意差)あり
)が出力されます。
データを書き換える場合は、 A
, B
列のデータを書き換え、 J3
, J4
セルのグループ名も更新してください。 D
~ G
列のセル中の計算式を下に拡張(コピー)、
算出手順
エクセルでマンホイットニーのU検定(正規近似)を行うための手順は、以下の6つです。
1. データ値の順位を算出
2グループを混ぜたデータを、RANK.AVG()
関数で小さい順に並べます。
2. 重複の補正項の計算
データ中に重複がある場合、検定統計量 を算出する値に補正項 を入れる必要があります。
補正項:
そのために必要な の計算を、E
~ G
列で以下のように行います。
- 同値判定 (
E
列):重複している場合は、2回目以降の重複値で0
を、それ以外は1
を返す(ROW()
,MATCH()
関数使用)。 - の算出 (
F
列): 重複数をカウント(同値判定 =1
の行のみ)。 - の算出 (
G
列): を使って計算。
ROW関数
指定したセルの行番号を返す。
未指定の場合、呼び出し元のセルが指定される。例:
=ROW()
- 第1引数 : セルの指定範囲(オプション)
MATCH関数
指定した範囲の中で検索し、最初にヒットした相対位置を返す。
例:
=MATCH(50,B:B,0)
- 第1引数 (
99
): 検索値(必須)- 第2引数 (
B:B
): 検索範囲(必須)- 第3引数 (
0
): 照合の型を0
,-1
,1
で指定(オプション)
0
: 完全一致したセルを返す1
: 検索値以下の最大値のセルを返す-1
: 検索値以上の最小値のセルを返す
3. グループ別に順位和, , を算出
2グループそれぞれ、個別の順位和とデータサイズ 、値 を算出します。
a. 順位和
SUMIFS()
関数を使い、各グループごとに順位和(順位の合計値)を算出します。
SUMIFS関数
条件にマッチした値のみの合計値を返す。
第4引数, 第5引数, ... を追加することで、条件を増やすことができる(省略可、最大127条件)。例:
=SUMIFS(D:D,A:A,J3)
- 第1引数 (
D:D
): 合計する値の範囲(必須)- 第2引数 (
A:A
): 条件をチェックする範囲(必須)- 第3引数 (
J3
): 条件(必須)- 第4引数, 第5,...引数 : 条件範囲と条件を追加(オプション)
b. データサイズ
=COUNTIFS()
関数を使い、各グループごとにデータサイズを算出します。
COUNTIFS関数
条件にマッチした値をカウントする。
第3引数, 第4引数, ... を追加することで、条件を増やすことができる(省略可、最大127条件)。例:
=COUNTIFS(A:A,J3)
- 第1引数 (
J3
): 条件をチェックする範囲(必須)- 第2引数 (
J3
): 条件(必須)- 第3引数, 第4,...引数 : 条件範囲と条件を追加(オプション)
c. 値
上記の a., b.の結果を使って、各グループごとに値を算出します。
- : グループ のデータサイズ
- : グループ のデータサイズ
- : グループ の順位和
4. 検定統計量 の算出
手順2, 3で算出した値を使って、検定統計量 を算出します。
5. α設定、p値の算出
事前に、有意水準αを設定します。
次に、検定統計量 から、NORMSDIST()
関数を使ってp値を算出します。
NORMSDIST関数
標準正規分布の累積分布関数を返す。
例:
=NORMSDIST(1.96)
- 第1引数 (
1.96
): 標準正規分布の値(必須)
6. 結果の表示
手順5で設定した有意水準と、算出したp値を比較し、検定結果を表示します。