Rのウィルコクソン順位和検定の効果サイズを決定する方法は?


8

2つのグループ間で平均p値に差があるかどうかを確認したいと思います。これを行うために、ウィルコクソンの順位和検定を実行します(データは通常は分散されません)。ここまでは順調ですね。最後に、対応するエフェクトサイズを計算します。残念ながら、Rはこれを提供していません。また、次を使用して効果サイズを簡単に計算できるz値も提供しません。効果サイズ= z / sqrt(N)

ここにいくつかのサンプルRコードがあります:

a=rep(0:1,each=20)                            #grouping variable
b=c(rnorm(20, .03,.01), rnorm(20, .02, .009)) #vector of p-values

d=cbind(a,b)

test = wilcox.test(b ~ a, data = d)     #perform Wilcoxon rank-sum test
test

誰かがエフェクトサイズを取得する方法を知っていますか?


3
SOへようこそ。あなたの質問は他の何よりも統計的であるため、www.crossvalidated.comに移行するようにあなたの質問にフラグを付けました。つまり、ウィルコクソンのRANKテストはランクで機能するので、あなたが話している効果のサイズはわかりません。Wilcoxonのようなノンパラメトリックテストではなく、パラメトリックテストにリンクされているため、明らかにz値を提供しません。ウィルコクソンは位置シフトの観点から解釈する必要があります。
Joris Meys

4
Wilcoxonの順位和検定は、の違いを評価しない手段を:それは確率論的不平等のためにテストします。したがって、効果サイズの適切な尺度は、から null値を引いた確率です。1 / 2B>A1/2
whuber

回答:


13

ウィルコクソン検定に対応する推定量は、Hodges-Lehmann推定量です。「場所の違い」の下wilcox.testconf.int=TRUEオプションを使用して返されます。

あなたの例のために:

> wilcox.test(b~a,data=d, conf.int=TRUE)

    Wilcoxon rank sum test

data:  b by a 
W = 355, p-value = 6.914e-06
alternative hypothesis: true location shift is not equal to 0 
95 percent confidence interval:
 0.008657301 0.021523993 
sample estimates:
difference in location 
            0.01442617 

ウィルコクソンとその背後にある仮定、およびそれが実際にテストするもの、およびその他のノンパラメトリック推定量の詳細については、このドキュメントが(おそらく)役に立ちます: www.stat.umn.edu/geyer/old03/5102/notes/rank.pdf


だから、あなたは何を言っているのwilcox.test(b~a,data=d, conf.int=TRUE)$estimate / sqrt(20)ですか?

2

数式のzを取得する

library(coin)
mydf <- as.data.frame(d)
wilcoxsign_test(b ~ a, data = mydf, distribution="exact")

そして、Nを40に設定して、数式で効果サイズを計算します。


1
coin::wilcoxsign_testeffect size=z/N

coin :: wilcoxsign_testを使用する理由は、z値を計算するためです。
Primigenius 2013

1
標準のwilcox.testからzを取得する別の方法は、Andry Fieldsの関数rFromWilcoxに実装されているアルゴリズムです。そして、はい、私は効果サイズ= z / sqrt(N)を参照していました。
Primigenius 2013

2
明確化に感謝しますが、そのZ値が効果サイズの適切な尺度であることはまだわかりません。(+1)
2013
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.