ウィルコクソンの符号順位検定

Rにてウィルコクソンの符号順位検定 (Wilcoxon signed rank test) を行う。実際の検定はウィルコクソンの順位和検定 (Wilcoxon rank sum test) の場合と同様に、パッケージ"exactRankTests"に搭載されている関数である"wilcox.exact"を用いて実行する。Rのデフォルトで使うことができる"wilcox.test"より"wilcox.exact"の方が使い勝手が良い。"wilcox.test"と違い、"wilcox.exact"では、正確なp値が計算される。

まず、Rを起動させ、以下のコマンドにてパッケージをインストールし、そのパッケージを読み込む。既にパッケージがインストールされている場合においては1行目は不要。

1|$install.packages("exactRankTests", repos="http://cran.ism.ac.jp/")
2|$library(exactRankTests)

ウィルコクソンの符号順位検定は一対の標本における代表値の差の検定である。各群の標本数は当然一致している必要がある。以下のデータXおよびデータYが得られたとき、これら2群間の代表値に差があるかどうかを検定する。帰無仮説 (H0) は2群間の代表値に差がないことである。

データX1.83, 1.50, 1.62, 2.48, 1.68, 1.88, 1.55, 3.06, 1.30
データY0.88, 0.65, 0.60, 1.05, 1.06, 1.29, 1.06, 2.14, 1.29

以下のコマンドにて、上の各データをそれぞれ変数"x"および"y"に格納する。

1|$x=c(1.83, 1.50, 1.62, 2.48, 1.68, 1.88, 1.55, 3.06, 1.30)
2|$y=c(0.88, 0.65, 0.60, 1.05, 1.06, 1.29, 1.06, 2.14, 1.29)

ウィルコクソンの符号順位検定は以下のコマンドにて実行する。符号順位検定では"paired=T"を指定する。ここで、"paired=F"を指定するとウィルコクソンの順位和検定が実行される。符号順位検定はパラメトリック検定でいうところの対応のあるt検定である。同一の被験者に対するある時点での測定値と別の時点での測定値の比較をするとき等に用いられる。一方、順位和検定はパラメトリック検定におけるスチューデントのt検定とかウェルチのt検定に相当するものである。

1|$wilcox.exact(x,y,paired=T)
        Exact Wilcoxon signed rank test

data:  x and y 
V = 45, p-value = 0.003906
alternative hypothesis: true mu is not equal to 0

以上の結果では、p値が"0.003906"と非常に小さく、有意水準を1%としてもデータXおよびデータYの代表値には差があることが示された。

また、以下のオプションを用いると信頼区間を算出することができる。"conf.int=T"は信頼区間を計算させるオプションであり、"conf.level"は信頼区間の信頼水準を指定するオプションである。"conf.level=0.95"なら95%信頼区間、"conf.level=0.99"なら99%信頼区間となる。

1|$wilcox.exact(x,y,paired=T,conf.int=T,conf.level=0.95)
        Exact Wilcoxon signed rank test

data:  x and y 
V = 45, p-value = 0.003906
alternative hypothesis: true mu is not equal to 0 
95 percent confidence interval:
 0.465 1.025 
sample estimates:
(pseudo)median 
          0.77

その他のオプションには以下のようなものがある。

OptionDescription
x検定対象の入力データの指定 (必須)
yもう一方の検定対象の入力データの指定 (順位和検定の際は必須)。もし指定しない場合は、xとxの要素数分の0のみからなるデータとの符号順位検定をすることと等価。また、この際は"paired=T"は指定できない。
alternative両側検定 (alternative="t") をするか片側検定をするかの指定。片側検定の場合はさらに、右側検定 (alternative="g") をするか左側検定 (alternative="l") をするかの指定
paired順位和検定 (paired=F) をするか符号順位検定 (paired=T) をするかの指定
exactp値を統計量の正規分布への近似からではなく正確に計算するかどうかの指定 (デフォルトでは"exact=T")
conf.int信頼区間を算出するかどうかの指定 (T or F)
conf.level直上のオプションを指定した際の信頼水準の指定 ( (0, 1] )
このエントリーをはてなブックマークに追加

Site search

ページのトップへ戻る