No.21864 Kruskal-Wallis(クラスカル・ワリス)検定の効果量  【初学者】 2015/12/03(Thu) 11:45

青木先生,いつもお世話になっております。

以下のページ参照させて頂きました。
http://aoki2.si.gunma-u.ac.jp/lecture/Soukan/nominal.html
http://aoki2.si.gunma-u.ac.jp/lecture/mb-arc/arc043/11999.html

4つの異なる診断に分けられた患者群について,ある1つのパラメーターを調べまして,クラスカル・ワリス検定をしました。このパラメーターは,連続変数で1−200くらいの間の値をとります。
この場合,クラメール係数 Vの公式中の「M は行と列のいずれかの最小数」については,4(診断の数)でよろしいでしょうか。

不勉強でお恥ずかしいのですが,ご教授ください。

No.21865 Re: Kruskal-Wallis(クラスカル・ワリス)検定の効果量  【青木繁伸】 2015/12/03(Thu) 14:16

元の質問(/arc043/11999.html)は,曖昧なのですが,クロス集計表における(カイ二乗統計量から計算される)属性相関係数クラメール係数を効果量として使おうということです。
あ なたの場合は,「このパラメーターは,連続変数で1−200くらいの間の値をとる」ということでクロス集計表ではないし(クラスカル・ウォリス検定統計量 がカイ二乗分布に従うということだけで),属性相関ではなく代表値の差の検定を行うのであるからして,まったくクラメール係数とは関係ないでしょう。

例 4群,各10例のデータ
> data <- data.frame(
+ x = c(
+ round(rnorm(10, 50, 10), 1),
+ round(rnorm(10, 55, 10), 1),
+ round(rnorm(10, 60, 10), 1),
+ round(rnorm(10, 70, 10), 1)),
+ g = rep(LETTERS[1:4], each=10)
+ )

集計表(クラスカル・ウォリス検定は元のデータがなくても,以下のようなクロス集計で再現できる)

> tbl <- xtabs(~x+g, data)
> tbl
g
x A B C D
23.4 1 0 0 0
44.1 0 1 0 0
45.2 1 0 0 0
46.8 0 0 1 0
47 1 0 0 0
51.1 0 1 0 0
51.5 0 1 0 0
52.3 1 0 0 0
54.4 1 0 0 0
55.7 0 1 0 0
56.7 0 0 1 0
57.2 1 0 1 0
57.6 0 0 1 0
57.7 0 0 1 0
57.9 0 0 1 0
59.2 1 0 0 0
60.2 0 1 0 0
60.5 1 0 0 0
61.1 1 0 0 0
61.5 0 0 1 0
62.4 0 1 0 0
63.7 0 1 1 0
64.3 1 0 0 1
66.2 0 0 0 1
66.3 0 1 0 0
67.1 0 1 0 0
70.2 0 0 0 1
71.2 0 0 0 1
72.2 0 1 0 0
73.1 0 0 0 1
77.1 0 0 1 1
77.8 0 0 0 1
79.1 0 0 0 1
79.8 0 0 1 0
83.3 0 0 0 1
86.3 0 0 0 1

クラメール係数の計算のために,カイ二乗統計量を求める

> chisq.test(tbl)

Pearson's Chi-squared test

data: tbl
X-squared = 104, df = 105, p-value = 0.5092

警告メッセージ:
chisq.test(tbl) で: カイ自乗近似は不正確かもしれません

カイ二乗統計量=104 からクラメール係数 0.9309493 を求める
しかし,カイ二乗統計量自体不適切な数値!!!

> sqrt(104/40/(4-1))
[1] 0.9309493

クラスカル・ウォリス検定

> kruskal.test(x~g, data)

Kruskal-Wallis rank sum test

data: x by g
Kruskal-Wallis chi-squared = 18.011, df = 3, p-value = 0.0004376

クラスカル・ウォリス検定のカイ二乗値 18.011 は,上の分割表のカイ二乗検定と全く関係のない数値。

No.21866 Re: Kruskal-Wallis(クラスカル・ワリス)検定の効果量  【初学者】 2015/12/03(Thu) 14:55

青木先生

ご丁寧な回答を誠にありがとうございました。
模擬サンプルで統計の実演までしてくださり,大変よくわかりました。

それでは,クラスカル・ウォリス検定の効果量は何を使えばよろしいのでしょうか。
青木先生が過去ログの中で,「ノンパラメトリック検定で効果量を示すのは意味がわかっていない,効果量を出さなくてもよい」,というようなご指摘をされていたかと思うのですが・・・。

No.21867 Re: Kruskal-Wallis(クラスカル・ワリス)検定の効果量  【青木繁伸】 2015/12/03(Thu) 15:16

http://mizumot.com/handbook/?page_id=422
に,

> クラスカル・ウォリス検定の実行

> result <- kruskal.test(Score~Class)
> result

> ※ Field (2005, 2009) や Larson-Hall (2010) は,クラスカル・ウォリス検定では,
> 効果量の算出が難しく,提示の意味もあまりないことから,多重比較として行う
> マン・ホイットニーのU検定のみの効果量を提示すべきであるとしている。

> 自由度が1ではないカイ2乗値を使って r を算出することに問題があるが,
> Morse (2009) や Nye and Hans-Vaughn (2011) では,クラスカル・ウォリス検定で
> 得られたカイ2乗値を用いて,次の式で η2 (イータ2乗)を求めている。

> η2 = カイ2乗値 / (サンプルサイズ-1)

> 以下はその計算を行った場合。

> # 効果量イータ2乗
> eta2 <- result$statistic/(length(dat[,1])-1)
> names(eta2) <- NULL
> eta2

> ※ Field (2005, 2009) では,上記のマン・ホイットニーのU検定やウィルコクソンの
> 符号付順位和検定で行っているように,結果の p 値から,z 値を計算し,それを
> r に変換する方法も提案されている。

などとあるが,私はよくわからない。

● 「統計学関連なんでもあり」の過去ログ--- 047 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る