p.adjust with n<比测试次数多

时间:2015-05-07 18:01:24

标签: r bioconductor p-value genome

我想在p.adjust所在的R中应用n函数。 p值的数量。独立测试的实际数量低于p值的数量,因为它来自具有连锁不平衡失衡的基因组数据(有效的独立测试数,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值。

我不确定哪种多重测试校正策略更适合或如何将其应用于我的数据。

1 个答案:

答案 0 :(得分:4)

代码:

  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