実装関連事項

各種プログラミング言語の基本的な書き方やソフトウェア等の使用方法について.

R にてフリードマン検定 (Friedman test) を行う.アメリカの経済学者でノーベル賞受賞者の Milton Friedman によって開発された.フリードマン検定は3群以上の対応のあるデータについて,ノンパラメトリック代表値の差を検定する手法である.どのデータ間に差があるのか,また,いくつのデータ間に差があるのか等の情報を得ることはできない.類似の検定法であるクラスカル・ウォリス検定が対応のないデータに対して用いられるのに対して,フリードマン検定はデータ間に対応のある場合に用いられる.

p値の計算

フリードマン検定はデータ間に対応がある場合の検定法なので当然,検定対象の各群のサンプルサイズは一致する必要がある.以下のデータX,YおよびZの3群間の代表値に差があるかどうかを検定する.帰無仮説 (H0) は3群間の代表値に差がないことである.有意水準5%にて検定する.

データX3.7, 3.1, 2.5, 2.6, 3.2, 3.2, 2.5
データY3.8, 2.7, 4.0, 2.4, 2.2, 3.4, 5.5
データZ2.8, 3.4, 4.5, 2.2, 3.0, 3.1, 3.4

最初に,データをRに取り込む.以下のコマンドにて,上のデータXおよびYをそれぞれ変数 vx および vy,vz に格納する.

$ vx=c(3.7, 3.1, 2.5, 2.6, 3.2, 3.2, 2.5)
$ vy=c(3.8, 2.7, 4.0, 2.4, 2.2, 3.4, 5.5)
$ vz=c(2.8, 3.4, 4.5, 2.2, 3.0, 3.1, 3.4)

フリードマン検定はコマンド friedman.test() にて実行する.この関数は R にデフォルトでインストールされているパッケージに含まれている.検定をするために最も簡単には,以下のようにコマンドを打つ.ncol= には標本数,すなわち群の数を指定する.

$ friedman.test(y=matrix(c(vx,vy,vz),ncol=3))

これを実行した結果は以下のようになる.

 
        Friedman rank sum test

data:  matrix(c(vx, vy, vz), ncol = 3)
Friedman chi-squared = 0.28571, df = 2, p-value = 0.8669

以上の結果では,p値が0.8669となっており,有意水準を5%で検定した場合でも帰無仮説は保留され,データX,YおよびZの3群の代表値に差がないと結論される.

オプション一覧

オプション詳細
y検定対象の読み込むデータの指定 (必須).行列形式のデータ.
groupsデータをベクトルとして読み込んだ場合,以下の blocks と併せて必須.直感的でなく使い難いのでデータフレーム形式のデータを持っている場合以外不要.
blocksデータをベクトルとして読み込んだ場合,上の groups と併せて必須.直感的でなく使い難いのでデータフレーム形式のデータを持っている場合以外不要.
formulaデータベクトル,groups および blocks を (ベクトル ~ groups | blocks) の形式で読み込める.
Hatena Google+