ウィルコクソンの順位和検定
date: 2017-05-08 excerpt: ウィルコクソンの順位和検定について
ウィルコクソンの順位和検定について
概要
- ノンパラメトリック検定の一つ
- 小さい順にランキングしていき、カテゴリごとの和を計算する
- その和の数を取りうるパターンはいくつあるのか
詳細
データ\(X\)と\(Y\)がある時これらの要素を構成した集合\(XY\)を作成する
この\(XY\)に対してランクを取った集合\(R_{XY}\)を作成する
タイが発生したときはその中間点を取る
\(R_{XY}\)をそれぞれ\(R_{X}\)と\(R_{Y}\)に再度分ける
\(N_{X} < N_{Y}\)のとき
\(T\)が統計量になる
すべてのパターンを計算しても大変なので、表も存在しており、それを参照して解くこともできる
具体的な例
これをランク化して和を取る
(1,2,3)
は組み合わせ1つ, (1,2,4)
は組み合わせ1つなので、合計2
すべての通りは6C3 = 20
なので、p = 2/20 = 0.1
平均と分散
平均
\[\mu = \frac{n(n+1)}{4}\]分散
\[\sigma^2 = \frac{n(n+1)(2n+1)}{24}\]pythonでの例
from scipy.stats import ranksums
import numpy as np
rng = np.random.default_rng()
sample1 = rng.uniform(-1, 1, 200)
sample2 = rng.uniform(-0.5, 1.5, 300)
ranksums(sample1, sample2)
>> RanksumsResult(statistic=-8.018478683590896, pvalue=1.070628581416197e-15)
sample1 = rng.uniform(-1, 1, 200)
sample2 = rng.uniform(-1, 1, 300)
ranksums(sample1, sample2)
>> RanksumsResult(statistic=0.32033477996852766, pvalue=0.7487145604962513)