Rコマンダー2標本ウィルコクソン検定ではwilcox.testを使用している

 オリジナルのRコマンダー「2標本ウィルコクソン検定」で計算されるウィルコクソンの検定は,wilcox.testという関数を使用しており「タイがあるため、正確な p 値を計算することができません」という警告の出るときがあります.なお,2標本ウィルコクソン検定=Mann-Whitney検定です.

タイとは何か?

●この警告の件に関しては,webでも様々説明されています→ ここ や ここ 
 結論としては,誤った結果が出ています.Rコマンダーの「2標本ウィルコクソン検定」は,そのまま行うと間違っているというわけです.
「タイ」とは,同順位のことです.ノンパラメトリックな手法全般に共通なのですが,データに順位をつけるときに同順位があると,補正(同順位補正)が必要になります.
 たとえば,
 データ例:10,25,30,40,55,68
 というデータがあるとき,このデータに順位をつけると,うえのデータ並びと同じにして,小さい順に
 順位を付けたデータ例:1,2,3,4,5,6
 となります.
 もしこれが,
 データ例:10,25,25,40,40,68
 というデータだとすれば,順位をつけると,うえのデータ並びと同じにして(同じ数値があるので),
 順位を付けたデータ例:1,2,2,4,4,6
 となります.2位のデータと4位のデータが2つずつあり,これが同順位となります.
 警告は「タイ(=同順位のデータ)があるため、正確な p 値を計算することができません」という意味なわけです.Wilcoxon検定の計算過程では,順位の和を使用します.
 データA:10,22,34,48,50
 データB:11,15,20,30,40
 このデータをA,B全ての数値で順位付けすると,
 順位を付けたデータA:1,5,7,9,10
 順位を付けたデータB:2,3,4,6,8
 となります.合計値が小さい方はデータBなのでデータBが小さいと判断します(※実際のWilcoxon検定はこんなに単純ではないですが,イメージとしてはこんな感じです).
 別の例で,
 データA:10,15,34,40,50
 データB:10,15,20,30,40
のときは,
 データをA,B全ての数値で順位付けすると,
 順位を付けたデータA:1,3,7,8,10
 順位を付けたデータB:1,3,5,6,8
となり,同順位があります.単純に合計を比べれば同じなのですが,そもそもWilcoxon検定が同順位を想定してない計算なので,同順位があることで計算が合わなくなるのです.従って,同順位の存在しないときと同じような状態になるように補正してやる必要があります.
●「タイ(=同順位のデータ)があるため、正確な p 値を計算することができません」というのは,同順位があるので,従来の同順位の存在しない方法では,ちゃんと計算できないpになった,という意味です.

何がどうなっているのか?

●まず, Rコマンダーの「2標本ウィルコクソン検定」のところでオプションタブから「連続修正を用いた正規近似」を選ぶと,SPSS(Ver.24)のMann-Whitney検定の漸近有意確率(両側)と一致します.しかも警告は出ません.
●オプションを何も操作しないと「デフォルト」になっています.「デフォルト」では「連続修正を用いた正規近似」と一致したりしなかったりです.しかも警告も出るときがあります.そして,オプションの「正確」「正確近似」では正確になってません.
● つまり,Rコマンダーの「2標本ウィルコクソン検定」を行うときはオプションタブから「連続修正を用いた正規近似」を選ぶと良いわけです.ただし,連続修正(同順位補正)を用いた近似値です.
●なお,nが多いときは,同順位が存在しない=警告が出ないときもありますが,必ずしもそうとは限りません.

正確な確率を出力したいときは?

●nが小さく,データの質によっては,同順位が頻発します.この場合は,連続修正(同順位補正)を用いた近似値ではなく,正確確率を参照した方が良いと考えられています.しかし,この意見に関しては,確約できる根拠がなく,絶対に良いとはいえません.
●Rで正確確率を出力するためには,coinパッケージというオプションにある,wilcox_testという関数を使用します(. が _ に置き換わっています).
● Rコマンダーの「2標本ウィルコクソン検定」のオプションで「連続修正を用いた正確近似」を選ぶと,wilcox.testのp値=wilcox_testのp値となります.従って,wilcox_testは,そのまま解析すると補正した近似値を出力します.
改変Rコマンダーのメニュー「統計量」-「差の検定」では「2標本Wilcoxonの検定(Mann-Whitneyの検定)」というメニューがあり,そこではcoinパッケージのwilcox_testの計算が簡単にできます.「検定のタイプ」で「正確」にチェックを入れると正確なp値が出ます.
●この場合はSPSSのMann-Whitney検定の正確な有意確率と一致します.従って,正確な確率を出力したいときはこちらを使用します.
●正確確率検定は,小数例の時に有効といわれますが,その是非については上述した通り,意見が分かれています.従って,上記のどちらをつかったかを明記すれば,どちらでも間違いではないといえます.

ページトップへ

MENU

Design by Megapx  Template by s-hoshino.com
Copyright (C) Eiki Tsushima All Rights Reserved.