如何利用r软件进行微生物rda分析

Python015

如何利用r软件进行微生物rda分析,第1张

如果只有一个响应变量数据,而没预测器(解释变量),我们仅仅需要、也只能归纳这个变量的分布特征(如通过直方图、中值,标准差、四分位极差等)。如果有多个响应变量,依然没有解释变量,我们可以用排序(间接梯度分析)来分析数据,例如可以用主成分分析(PCA)、对应分析(CA)、去趋势对应分析(DCA)和非度量多维尺度分析(NMDS),当然也可以用等级分类,如聚类的方法将样方分为有区别的几类。

如果我们有一个或多个的解释变量,要分析一个响应变量,可以用广义的回归模型,包括传统的回归模型和方差分析、协方差分析。这类分析统称为一般线性模型(general linear model),最近在一般线性模型基础上,发展出了广义线性模型(generalizedlinear models, GLM)和广义可加模型(generalized additivemodels, GAM)。有关这回归模型更多的信息,我们将在第8章讨论。

如果有多个响应变量需要分析,解释变量一个或多个,我们可以通过直接梯度排序来分析解释变量与多个响应变量(群落学里通常是物种)之间的关系。常用的有冗余分析(RDA)和典范对应分析(CCA)等排序技术。

你的问题里面氮源算是解释变量,产生的菌种属于相应变量。如果你测定的菌种指标为多个,我感觉你就用canoco做一个CCA应该就行了(还有,这种方式应用在生态上只是较多而已,但用在你的实验上应该没什么问题)。CCA是首先针对你的菌种进行排序,然后再与氮源进行线性结合;当然,如果你测定的菌种指标只有一个,那就用SPSS之类的简单软件分别进行线性回归,然后看哪个拟合的结果(r)好就行了。祝早日发表。

也做了挺多次RDA分析,自己现在小结一下RDA分析流程:

就我个人而言,虚线前面都是不太经历的步骤,我一般不会主动删去样品的环境信息,因为我接触的菌群这块本来就没有什么多余的环境信息-_-||,所以我的重点放在怎么去除多余OTU或菌群上面。

一般而言,我首先会做一次差异分析,挑选有差异的OTU或菌群进行展示(phyloseq推荐使用DESeq2和edgeR,详见 Waste Not, Want Not: Why Rarefying Microbiome Data Is Inadmissible ),这里不是重点不在赘述。

但是差异OTU或菌群还有可能太多,RDA呈现出来密密麻麻的,调也得调好久,最后还是好不美观。

偶然间,发现envfit不仅可以评估环境因子的显著性,也可以评估物种的相关性和显著性,这为我们进一步去取冗余物种提供了条件,值得记录下来学习。

示例: