【发布时间】:2019-11-16 23:56:38
【问题描述】:
在比较疾病和对照之间细菌基因的差异表达,然后计算 Bray-Curtis 相异度并随后绘制 PCoA 时,我无法使用来自 DESeq2 的结果。
我的 DESeq2 输出已保存为数据框。它由 6000 行(基因名称)和两列组成,一列用于 p 值(均 1。数据框称为 siggenes1。在运行 Bray-Curtis 和 PCoA 之前,我是否需要标准化我的数据?我认为这已经通过 DESEq2 完成,但是查看我可以提供的代码,我在执行 DESeq2 时没有包含 normalisation=T。
或者我需要在使用 DESeq2 之前使用扫描函数对初始数据进行归一化吗?
我的 Bray-Curtis 差异代码
vegDistOut=vegdist(t(siggenes1),"bray")
上面得到 1 个值,即 0.995。现在我有点迷茫,我将如何设计用于绘制 PCoA 的代码,因为我的下一段代码是错误的。
pcoaOut=pcoa(vegDistOut)
数组中的错误(STATS,dims[perm]):“dims”的长度不能为 0
由于上述步骤,我无法继续。
如果有人可以帮忙,我将不胜感激。 谢谢你
【问题讨论】:
-
嗨@Adam9,我真的不太明白你想要做什么。如果您使用 vegdist,您正在计算样本之间的距离。好的,如果您使用的是基因表达,那么您应该输入标准化的基因表达表?
-
嗨@StupidWolf,我的基因表达表是一个csv,其中有超过100000个基因作为行,然后是8列,4个疾病和4个对照。数据可以描述为零膨胀负二项分布。从这个意义上说,我已经看到用于“规范化”表的扫描函数,一些代码将是 totalgenecount = colSums(gct) gctnorm = sweep(gct, MARGIN=2, totalgenecount/10^9, FUN="/") 与分析在此之后使用组之间的 t 检验完成(我使用 DESeq2 代替差异基因表达)....
-
想知道在运行 DESeq2 之前是否需要完成这样的标准化步骤?我知道在 PCA 或 PCoA 之前我需要确保数据标准化,我想知道这是否可能是我的下游分析尝试不起作用的原因。
标签: r