トップ 履歴 一覧 Farm ソース 検索 ヘルプ PDF RSS ログイン

p.adjust

*disclaimer
655697

多重比較の場合のp値の補正

https://www.rdocumentation.org/packages/stats/versions/3.6.2/topics/p.adjust

手順

  1. 補正前のp値をベクトルに保存
  2. 補正方法を選択:"bonferroni" "holm"
  3. 組合せの数(ベクトルの要素の数と同じ)

使い方

p.adjust(ベクトル, method="補正方法", 組合せの数)

> d1 <- c(0.00000000000000022, 0.00000000000000022, 0.00000000000000022)

> p.adjust(d1, method="holm", n=3)

[1] 6.6e-16 6.6e-16 6.6e-16

> d2 <- c(0.0000000007925, 0.00000007586, 0.8093)

> p.adjust(d2, method="holm", n=3)

[1] 2.3775e-09 1.5172e-07 8.0930e-01

> p.adjust(d2, method="bonferroni", n=3)

[1] 2.3775e-09 2.2758e-07 1.0000e+00

> d3 <- c(0.00000002481, 0.00000000000000022, 0.0000000005179)

> p.adjust(d3, method="holm", n=3)

[1] 2.4810e-08 6.6000e-16 1.0358e-09

 BonferroniかHolmかどちらを使うか

どう違うか

  • Bonferroniは、すべての組み合わせに対して、同等に一番厳しい(組合せの数を共通にすべての場合にあてはめる)
  • Holmは、一番有意になりそうなものから順に、組合せの数を一つずつマイナスしてあてはめていく
    • なので、一番有意になりそうにないものは、補正前と後とで同じ値となる。

 補正の二通りの考え方

危険率自体を割って基準を厳しくする方法

p値に組合せの数を掛けてp値を大きくする方法(危険率 0.05等は変わらない)=こちらの方が直感的に理解しやすい


 Tips

Holmの方法では、p値の順にかける組合せの数をあてはめていくが、p値が同じだった場合どうするか?

  • より厳しいほうの数をあてはめる
  • そもそもHolmの方法は、厳しすぎるBonferroniを「あまく」する考えに基づく
  • Holmの方法はあますぎるというクレームをされる恐れがある
  • なので、厳しくしておいたほうがクレームがつきにくい