p.adjust 其中 n < 测试次数

p.adjust with n < than number of tests

我想在 R 中应用 p.adjust 函数,其中 n 是 < p 值的数量。独立测试的实际数量低于 p 值的数量,因为它来自具有 Linkage Desequilibrium Desequilibrium 的基因组数据(独立测试的有效数量,Meff)。

但是,p.adjust 函数不允许:number of comparisons, must be at least length(p).

有人知道如何在函数或其他通用函数中更改此默认值以完成类似的工作吗?谢谢!

已执行的步骤:

1 - 3242 个测试标记 = 3242 个 p 值

2 - 推断 Meff 为:1096(http://simplem.sourceforge.net/ 程序)

现在我需要根据 Meff 估计校正后的 treshould 或校正后的 p 值。

我不确定哪种多重检验校正策略更适合或如何将其应用到我的数据中。

代码:

  p.adjust # typed at command line prints out the code
  # copy the body of the function

... 真的很简单,全是 R。只需重新定义一个注释掉 stopifnot() 行的函数:

my.p.adj <- function (p, method = p.adjust.methods, n = length(p)) 
 # paste the body and edit this:
....
p <- p[nna]
lp <- length(p)
# stopifnot(n >= lp)
if (n <= 1) 
....  # hit enter