本文主要介绍生物信息学软件 Mothur进行给OTUs、ASVs分配序列以及进行系统发育工作。
Mothur分析
到了可以分析数据的时候了。想做两件事——给OTUs、ASVs分配序列以及进行系统发育工作。首先使用remove.group命令从数据集中删除Mock样本:
mothur>remove.groups(count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.count_table,fasta=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.fasta,taxonomy=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.taxonomy, groups=Mock)
01OTUs
现在有两个选项可以将序列聚类到OTUs中。对于像这样的小型数据集,可以使用dist.seqs和cluster执行传统方法:
mothur>dist.seqs(fasta=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.fasta,cutoff=0.03)
聚类stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.dist
mothur>cluster(column=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.dist,count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table)
另一种选择是使用cluster.split命令。在这种方法中,使用分类学信息将序列分为多个bin,然后在每个bin中进行聚类。在测试中,对纲和属水平数据进行拆分时得到的MCC值分别在整个测试数据集中的98.0%和93.0%以内。MCC值的下降导致OTU的形成量分别比整个数据集多4.7%和22.5%。聚类分裂启发式的使用可能不值得在聚类质量上损失。然而,随着数据规模的增大,可能需要使用启发式算法将数据聚类成OTUs。Cluster.split方法的优点是它应该更快,占用内存更少,并且可以在多个处理器上运行。在理想的世界中更喜欢传统路线,因为“Trad is rad”,但也认为这种幽默很有趣……在此命令中使用taxlevel=4,它对应于Order的级别。
mothur>cluster.split(fasta=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.fasta,count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table,taxonomy=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.pick.taxonomy, splitmethod=classify,taxlevel=4,cutoff=0.03)
接下来想知道每个组中每个OTU中有多少序列,可以使用make.shared命令来完成。在这里将Mothur的阈值设置为0.03:
mothur>make.shared(list=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.opti_mcc.list,count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table, label=0.03)
可能还想知道每个OTU的taxonomy,可以使用classify.otu命令获得每个OTU的共同的物种分类:
mothur>classify.otu(list=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.opti_mcc.list,count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table,taxonomy=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.pick.taxonomy, label=0.03)
stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.opti_mcc.0.03.cons.taxonomy被打开后可以看到类似如下的文件:
这表明在样本中观察到Otu008一共5337次,并且所有序列(100%)都被归类为Alistipes(另枝菌属)的成员。
02ASVs
OTU通常表示彼此之间相差不超过3%的序列。相反,如果序列彼此不同,ASVs(又称ESVs)会努力将它们区分为不同的OTU。这种方法存在将同一基因组中的操纵子分离成单独的ASV的可能性以及ASV通常是一组相互间隔一个或两个碱基的序列(There are challenges with this approach including the possibility of separating operons from the same genome into separate ASVs and that an ASV is typically really a cluster of sequences that are one or two bases apart from each other.),但仍有人迎难而上。Mothur中内置的用于识别ASV的方法是pre.cluster。将序列聚类为ASV,然后删除嵌合体和污染物序列。可以使用make.shared命令将用于形成OTU的fasta和count_table文件转换为共享文件。
mothur>make.shared(count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table)
这会产生一个共享和列表文件。可以使用的共享文件就像形成OTU或phylotypes的共享文件一样。可以使用列表文件为每个ASV生成共同的物种(consensus taxonomy)。
mothur>classify.otu(list=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.asv.list,count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table,taxonomy=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.pick.taxonomy, label=asv)
03Phylotypes
对于某些分析,可能希望根据它们的分类学分类将序列分类到phylotypes。可以使用phylotype命令:
mothur>phylotype(taxonomy=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.pick.taxonomy)
与cluster/cluster.split相比,phylotype的临界值编号略有不同。这里列出了1到6,分别对应从属到界的水平。因此,如果需要genus级别的共享文件,可以执行以下操作:
mothur>make.shared(list=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.pick.tx.list,count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table, label=1)
如果还想知道这些OTU的物种注释,则可以在phylotypes上运行classify.otu:
mothur>classify.otu(list=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.pick.tx.list,count=stability.trim.contigs.good.unique.good.filter.unique.precluster.denovo.vsearch.pick.pick.pick.count_table,taxonomy=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pds.wang.pick.pick.taxonomy, label=1)
04Phylogenetic
如果对使用依赖于系统发育树的方法(例如计算系统多样性或unifrac命令)感兴趣,则需要生成树。随着序列数量的增加,此过程变得不稳定。以下是如何使用dist.seqs和clearcut:
mothur>dist.seqs(fasta=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.fasta, output=lt, processors=8)
mothur>clearcut(phylip=stability.trim.contigs.good.unique.good.filter.unique.precluster.pick.pick.pick.phylip.dist)
这篇推文对你有帮助吗?喜欢这篇文章吗?喜欢就不要错过呀,关注本知乎号查看更多的环境微生物生信分析相关文章。亦可以用微信扫描下方二维码关注“环微分析”微信公众号,小编在里面载入了更加完善的学习资料供广大生信分析研究者爱好者参考学习,也希望读者们发现错误后予以指出,小编愿与诸君共同进步!!!
学习环境微生物分析,关注“环微分析”公众号,持续更新,开源免费,敬请关注!
转载自原创文章:
Mothur5_开始分析_OTUs、ASVs聚类与系统发育构建
最后,再次感谢你阅读本篇文章,真心希望对你有所帮助。感谢!