Q 值小于 P 值

机器算法验证 假设检验 p 值 错误发现率
2022-03-23 00:08:02

我有一系列回归方程的 p 值列表。其中许多 P 值都很小。为了计算错误发现率,我一直在使用 R 中的 q-value 包。我注意到,基于此分析,0.05 的 P 值对应于小于 p 值(0.03)的 q 值。那么我会说我的错误发现率小于我的 P 值吗?这可能吗?

2个回答

是的,如果零假设的比例(由 qvalue 包根据您的 p 值分布估计)很小并且您的测试很强大,那么这是可能的。

这是一个例子。假设您正在测试 1000 个假设,假设 200 (20%) 实际上是空的 - 这个比例称为假设 qvalue 包准确地估计了这个值(有关它如何做到这一点的更多信息,请参见此处,并注意您可以使用 来查看它为您的数据估计的内容)。此外,假设您的 500 个 p 值低于 0.05(您的测试很强大)。那么对应于 0.05 的 p 值的 q 值是多少?π0qvalue(mypvalues)$pi0

q 值是通过设置特定 p 值截止值获得的错误发现的预期比例。在您的 200 个零假设中,p 值均匀分布在 0 和 1 之间(这是 p 值定义的一部分)。这意味着其中 5%(10 个假设)将低于 0.05。因此,您有 500 个低于 0.05 的假设,并且您预计其中 10 个是错误的:您的预期 FDR 为在这种情况下,q 值确实小于 p 值。10/500=.02

您无需计算错误发现率,而是控制错误发现率。

全族错误率方法(例如 Bonferroni、Holm-Sidák 等)试图控制错误拒绝 H_的概率,同时假设所有零假设都是正确的。0

错误发现率方法试图控制错误拒绝的概率,同时假设一些零假设是错误的。在此上下文中值是已使用控制错误发现率的方法调整值应该大于或等于计算它们的值,但是很难说更多关于为什么在没有看到代码的情况下得到结果的原因。0qpqp