-2

通过使用该函数,我得到了从两个大型数据集中获得的p-values列表。wilcox.test()

由于有多重比较,我必须调整 p 值。

问题是我只是不明白该p.adjust()功能是如何工作的。
有人可以逐步告诉我该怎么做,以便我为所有已知的 p 值调整 p 值吗?

4

1 回答 1

1

我只是复制您的数据并带来这个简单的功能:

dat <- data.frame(
    value=c(4409, 55.5, 3951.5),
    p.value=c(2.766e-15, 0.04606, 1.545e-15)
)

这是获得调整后 p 值的简单函数:

getAdjustPval <- function(df, pAdjustMethod="BH", ...) {
    if(is.null(df$p.value)) {
        stop("p-value is required")
    } else {
        p <- df$p.value
        df$adjust.pvalue <- p.adjust(p, method = pAdjustMethod)
        df
    }
}

你会得到这个:

   value   p.value adjust.pvalue
1 4409.0 2.766e-15     4.149e-15
2   55.5 4.606e-02     4.606e-02
3 3951.5 1.545e-15     4.149e-15
于 2017-02-09T12:44:06.663 回答