本雅米尼-霍希伯格p.在R中调整-q*在哪里?

本雅米尼-霍希伯格p.在R中调整-q*在哪里?,r,R,在R函数p.adjust中,我找不到哪个变量是原始变量的q* R代码: ... }, BH = { i <- lp:1L o <- order(p, decreasing = TRUE) ro <- order(o) pmin(1, cummin(n/i * p[o]))[ro] 我很困惑,因为据我所知,q*应该由实验者选择,通常设置为0.05,但与alpha不同。该程序计算的“BH调整后的p值”实际上并不存在,但它们仍然有用:低于特定固定截止

在R函数p.adjust中,我找不到哪个变量是原始变量的q*

R代码:

...
}, BH = {
    i <- lp:1L
    o <- order(p, decreasing = TRUE)
    ro <- order(o)
    pmin(1, cummin(n/i * p[o]))[ro]

我很困惑,因为据我所知,q*应该由实验者选择,通常设置为0.05,但与alpha不同。

该程序计算的“BH调整后的p值”实际上并不存在,但它们仍然有用:低于特定固定截止点的所有调整后的p值选择与使用原始Q值程序选择的假设完全相同的假设。我找到了这句话,实际上整个章节都是从 很有帮助:

在我看来,调整后的p值有点混乱,因为 它们并不是对概率P的估计。我 我认为最好给出原始的P值,并说出哪些是 使用Benjamini-Hochberg程序处理您的错误 发现率,但如果Benjamini Hochberg调整P值是常见的 在你所在领域的文献中,你可能不得不使用它们


@Dason嗨,我在问p.adjust函数的R代码中使用了什么q*值。你选择q*。这是您想要控制错误发现率的级别。因此,如果您希望q*为0.05,那么在使用p.adjust with BH之后,只拒绝具有值的空值,就像仅使用p值时选择alpha级别一样。因此,正如您负责将p值与alpha截止值进行比较一样,您需要将BH过程输出的q值与q*截止值进行比较,这决定了您想要使用的错误发现率。