【发布时间】:2021-02-13 16:34:40
【问题描述】:
我在 deseq2 输出的命名(对比度)方面遇到了这个问题,其中输出的命名不可重现。通常比较看起来像: variable_level2_vs_level1 ("treat_b_vs_a") 但有时它会作为变量 1(“treat1”)返回。我也在其他网站上看到过有关此问题的帖子,但我从未找到合适的解决方案(也没有找到原因)。
到目前为止,这一直是一个非常难以捉摸的问题,因为我无法轻松地重现它。 但是今天我设法弄明白了,并提出了一个最小的可重现代码,导致下面的问题。
只有当我运行一个对比度不正确的纯素阿多尼斯模型时才会出现问题。 也许有人可以帮助我更好地理解问题的根源
library(vegan)
library(DESeq2)
mat <- matrix(sample(1:1000), ncol=10)
var$treat <- c(rep("a",5), rep("b",5))
var$y <- c(rep("a",10))
dds <- DESeq2::DESeqDataSetFromMatrix(mat, colData = var, design = ~ treat)
dds = DESeq(dds, test="Wald", fitType="parametric")
resultsNames(dds)
它给出了treat_b_vs_a,但是如果我在adonis模型之后再次运行它:
adonis(mat~var$y)
dds <- DESeq2::DESeqDataSetFromMatrix(mat, colData = var, design = ~ treat)
dds = DESeq(dds, test="Wald", fitType="parametric")
resultsNames(dds)
我得到了款待1。
因此,在 adonis 中以某种方式触发对比度错误会导致 DESeq 对对比度的处理不正确。
【问题讨论】: