Benjamini&Hochberg(1995)とBenjamini&Yekutieli(2001)の偽発見率手続きの実際の違いは何ですか?


34

私の統計プログラムは、Benjamini&Hochberg(1995)とBenjamini&Yekutieli(2001)の偽発見率(FDR)手順の両方を実装しています。私は後の論文を読むために最善を尽くしましたが、それは数学的にかなり濃厚であり、手順の違いを理解していると確信できません。統計プログラムの基礎となるコードから、それらは実際に異なり、後者にはFDRに関して言及した量qが含まれていますが、把握していません。

Benjamini&Yekutieli(2001)手順よりもBenjamini&Hochberg(1995)手順を好む理由はありますか?それらには異なる仮定がありますか?これらのアプローチの実際の違いは何ですか?

ベンジャミニ、Y。、およびホッホバーグ、Y。(1995)。誤検出率の制御:複数のテストに対する実用的で強力なアプローチ。Journal of the Royal Statistical SocietyシリーズB、57、289–300。

Benjamini、Y。、およびYekutieli、D。(2001)。依存関係にある複数のテストでの誤検出率の制御。統計年報29、1165–1188。

以下のコメントで参照されている1999年の論文:Yekutieli、D.&Benjamini、Y.(1999)。相関テスト統計の複数のテスト手順を制御するリサンプリングベースの誤検出率。Journal of Statistical Planning and Inference、82(1)、171-196。


2001年の論文は、依存関係にあるFDR(1995)の特性を確立すると考えました。YekutieliおよびBenjamini(統計計画および推論のジャーナル、1999年)は、異なるFDR手順を確立しています。あなたが探しているものはありますか?
ジュリース

@julieth:それはアブストラクトだけを読んだときの2001年の論文の私の感覚でしたが、論文の数式(27-30など)にはqと呼ばれる量が含まれているようです。それから再び、あなたが引用するこの1999年の論文もそうです。私の感覚では、1999年の論文はリサンプリング手法を実装しており、これは明らかに(コードを見て)私の統計プログラムが行っていることではありません(R; p.adjust)...しかし、私は間違っているかもしれません。
ラッセルピアス

1
2001年の論文の終わりに1999年の論文が引用され、彼らは「最後に、上記の問題に対処し、同時に依存関係に関する情報を活用しようとするYekutieli and Benjamini(1999)のリサンプリングベースの手順を思い出してください。サンプルから派生した構造。リサンプリングベースの手順はより強力ですが、複雑さが増し、FDR制御に近似するだけです。...だから2001年の論文は閉じた形式の計算ソリューションを提供し、それが私の統計プログラムが実装しているものだと思います。
ラッセルピアス

1
わかりましたので、p.adjustを使用しています。あなたが指摘したように、99の論文はまったく異なっています。私は常にp.adjustでBYオプションを見ていましたが、注意を払いませんでした。その2001年の論文は、通常、FDRと「正の回帰依存性」の証拠に関連して引用されています。別の推定量を引用しているとは思っていませんでしたが、おそらくそこにあるのでしょう。再読する必要があるようです。
ジュリース

回答:


21

Benjamini and Hochberg(1995)は、偽発見率を導入しました。Benjamini and Yekutieli(2001)は、推定器がいくつかの形式の依存性の下で有効であることを証明しました。依存は次のように発生します。t検定で使用される連続変数とそれに関連する別の変数を考えます。たとえば、2つのグループでBMIが異なるかどうか、およびこれらの2つのグループで胴囲が異なるかどうかをテストします。これらの変数は相関しているため、結果のp値も相関します。Yekutieli and Benjamini(1999)は別のFDR制御手順を開発しました。これは、ヌル分布をリサンプリングすることにより、一般的な依存関係の下で使用できます。比較はヌル順列分布に関するものであるため、真の陽性の総数が増加するにつれて、メソッドはより保守的になります。真の陽性の数が増えるにつれて、BH 1995も保守的であることがわかります。これを改善するために、Benjamini and Hochberg(2000)は適応FDR手順を導入しました。このためには、ヌルの比率というパラメーターの推定が必要でした。これは、StoryのpFDR推定器でも使用されます。Storeyは比較を行い、彼の方法はより強力であり、1995年の手順の保守的な性質を強調していると主張しています。Storeyには、依存関係にある結果とシミュレーションもあります。

上記のテストはすべて、独立して有効です。問題は、これらの推定値が独立からどのような逸脱に対処できるかです。

私の現在の考えは、あまりにも多くの真の陽性を期待しなければ、BY(1999)プロシージャは分布機能と依存性を組み込んでいるので素晴らしいことです。ただし、実装については知りません。Storeyの方法は、いくつかの依存性を伴う多くの真の陽性のために設計されました。BH 1995は、家族単位のエラー率の代替手段を提供しますが、依然として保守的です。

ベンジャミニ、Y、Yホッホバーグ。独立した統計を用いた多重試験における偽発見率の適応制御について Journal of Educational and Behavioral Statistics、2000。


どうもありがとう!次の点/問題を明確にするために質問を修正していただけますか:1999年の論文は「null分布の再サンプリング」ですか?2000年の論文の引用を提供していただけますか?p.adjustに慣れているようですが、実際にBYプロシージャを実装していますか?仮説検定が依存していない場合、BHを使用する必要がありますか?仮説検定が依存と見なされる原因は何ですか?-これらの質問のいずれかが現在の範囲を超えており、新しい質問をする必要がある場合はお知らせください。
ラッセルピアス

p.adjustには両方のオプションがあります(BHおよびBY)。しかし、私はこれらが同じだと思ったので、私は何かを見逃しました。
ジュリス

また、基礎となるコードも異なるため(チェックしました)、異なる数値を生成します。
ラッセルピアス

それでは、p.adjustがBY引数で実行していると思うのはどのような手順ですか?私はそれが1999年の手順だとは思わない。基礎となるコードはpmin(1、cummin(q * n / i * p [o]))[ro]です。BHはpmin(1、cummin(n / i * p [o]))[ro]です。したがって、これらはqのみが異なります。qはsum(1 /(1:n))です。ここで、nはp値の数です。O及びROだけの機能のための数値順にp値を置くのに役立つし、それらは、ユーザがそれらをinputed同じ順序でバックアウト吐き出す。
russellpierce

1
ですから、新しい答えは出てこないので、この答えを受け入れ、私の理解を要約します。p.adjustは、BYを誤っている可能性があります。実行されるのはリサンプリングではありません。BH、2000年は適応FDR手順を導入しました。これには、NULL比率の推定が含まれます。これは、BYコードに現れるqである可能性があります。暫定的に、賢明なことは、オプション「BY」を使用するときに使用される実際の手順を反映するp.adjustを直接引用し、「BY」が実際にBenjamini&Hochbergを実装している可能性があることに注意することです2000年
ラッセルピアス

5

p.adjustはBYを誤解していません。参照は、論文の定理1.3(p.1182のセクション5の証明)です。

Benjamini、Y。、およびYekutieli、D。(2001)。依存関係にある複数のテストでの誤検出率の制御。統計年報29、1165–1188。

このホワイトペーパーではいくつかの異なる調整について説明しているため、p.adjust()のヘルプページ(執筆時点)の参照はやや不明瞭です。このメソッドは、最も一般的な依存構造の下で、指定されたレートでFDRを制御することが保証されています。クリストファー・ジェノベーゼのスライドには有益なコメントがあります。www.stat.cmu.edu/〜genovese / talks / hannover1-04.pdfスライド37のコメントに注意してください。 'BY' with p.adjust()] that:「残念ながら、これは一般的に非常に保守的であり、ボンフェローニよりもさらにそうです。」

数値例: method='BY' vsmethod='BH'

以下は、Benjamini and Hochberg(2000)の論文の表2の列2のp値について、Rのp.adjust()関数を使用してmethod = 'BY'とmethod = 'BH'を比較します。

> p <-    c(0.85628,0.60282,0.44008,0.41998,0.3864,0.3689,0.31162,0.23522,0.20964,
0.19388,0.15872,0.14374,0.10026,0.08226,0.07912,0.0659,0.05802,0.05572,
0.0549,0.04678,0.0465,0.04104,0.02036,0.00964,0.00904,0.00748,0.00404,
0.00282,0.002,0.0018,2e-05,2e-05,2e-05,0)
> pmat <- rbind(p,p.adjust(p, method='BH'),p.adjust(p, method='BY'))
> rownames(pmat)<-c("pval","adj='BH","adj='BY'")
> round(pmat,4)

[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] pval 0.8563 0.6028 0.4401 0.4200 0.3864 0.3689 0.3116 0.2352 0.2096 adj='BH 0.8563 0.6211 0.4676 0.4606 0.4379 0.4325 0.3784 0.2962 0.2741 adj='BY' 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 [,10] [,11] [,12] [,13] [,14] [,15] [,16] [,17] [,18] pval 0.1939 0.1587 0.1437 0.1003 0.0823 0.0791 0.0659 0.0580 0.0557 adj='BH 0.2637 0.2249 0.2125 0.1549 0.1332 0.1332 0.1179 0.1096 0.1096 adj='BY' 1.0000 0.9260 0.8751 0.6381 0.5485 0.5485 0.4856 0.4513 0.4513 [,19] [,20] [,21] [,22] [,23] [,24] [,25] [,26] [,27] pval 0.0549 0.0468 0.0465 0.0410 0.0204 0.0096 0.0090 0.0075 0.0040 adj='BH 0.1096 0.1060 0.1060 0.1060 0.0577 0.0298 0.0298 0.0283 0.0172 adj='BY' 0.4513 0.4367 0.4367 0.4367 0.2376 0.1227 0.1227 0.1164 0.0707 [,28] [,29] [,30] [,31] [,32] [,33] [,34] pval 0.0028 0.0020 0.0018 0e+00 0e+00 0e+00 0 adj='BH 0.0137 0.0113 0.0113 2e-04 2e-04 2e-04 0 adj='BY' 0.0564 0.0467 0.0467 7e-04 7e-04 7e-04 0

=1m1/m

> mult <- sapply(c(11, 30, 34, 226, 1674, 12365), function(i)sum(1/(1:i)))

setNames(mult、paste(c( 'm ='、rep( ''、5))、c(11、30、34、226、1674、12365))) m = 11 30 34 226 1674 12365 3.020 3.995 4.118 6.000 8.000 10.000

上記の例で、ことを確認してくださいm

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.