Storey FDR矫正方法
简介
John Storey 创建了一种将系列p值转换为q值的方法,不同之处在于p值用于衡量单个测试为空假设模型的累积概率,而q值用于衡量False Discovery。通过接受给定的测试以及每个测试具有较小p值。
q值需要解决的主要问题是多重假设检验问题。问题在于,长时间执行假设检验的标准p值在同时执行多个检验时并不可靠。这是个常见的生物学问题,例如当我们要问基因表达在整个基因组中是否显著(比如在酵母中检测了6,000多次,而在人类中检测了20,000多次)。所以在单次检验中,你可能因为p小于0.05而拒绝零假设(意思就是零假设产生的观测值或者极值只有小于5%的可能性)。但是在多重检验中,有可能出现任何假设错误的几率将会随着测试次数增加而极具增加,所以将p值的阈值设置为0.05将会导致错误的测试超过5%。
假设我们真正需要的是FDR值,FDR定义为通过阈值但是为假的测试比例。初次逼近时,似乎通过乘以测试次数来矫正p值可以比较好的近似所需FDR,而且实际上这正是Bonferroni矫正所作的。但是不幸的是,这个做法太苛刻而导致丢失太多好的测试结果。此后更高级的FDR矫正被开发出来,而Storey矫正被认为是最好的方法以取得真实测试和减少错误测试之间的平衡。Storey给出了很多很好的理论,到那时我们只用图形的方法对他的原理进行补充阐述,这样可是使大家直观理解并完成q值的过程。有兴趣可以参阅Storey 原文(Storey,2002)。
零假设(null hypothesis)的P-values为均匀分布
想象一下进行多个测试时,我们确认每次测试零假设为true。所有p值的直方图如上图所示。对于真实的数据,我们将会期望出现小的波动,上图没有显示,但是趋势仍然时均匀分布的。如果可以的话,推荐查看一下p值的直方图:收集一个希望零假设为真的数据集,如果p值不是均匀分布,那么就要查看有没有正确计算p值,或者检查零假设是否有误。p值正确对分析过程至关重要。
真实多次测试的p-values将在0处出现峰值
这里的假设是,在零检验为false的多次测试中,最小的p值会被富集。重要的是,p值的分布在远离p=0处应该保持均匀,当然仍然会有一些小波动,因为大部分的测试仍然为符合零检验。否则与之前同样需要警惕,要么p值计算有误,要么零假设有问题。
Storey FDR过程的关键在于:估计在p=0附近有多少false预测。想象p值的分布其实是两个基础分布的混合,一个是 零假设 为true,则p值分布均匀;另一个是 零假设 为false,则在p=0附近存在峰值。
Storesy FDR过程需要 π 0 \pi0 π