将OTU表和系统发育树与phyloseq合并

时间:2018-02-23 17:20:45

标签: r phyloseq

我正在尝试使用以下命令创建一个带有OTU表,分类群名称,样本数据和系统发育树的phyloseq类对象

> Prelude > import Data.List.Split
> Prelude Data.List.Split > chunksOf 3 "abcdefg"
     ["abc","def","g"]

我可以创建刚才找到的ps对象,但是我不能将系统发生树添加到这个对象中。这似乎失败了,因为我的OTU表和我的树上的名称(从SILVA数据库下载)不匹配。使用taxa_names,我可以看到树按照预期分配给它的分类名称,但是我的OTU表具有每个序列读取的名称。

OTU表(seqtab.nochim),分类学分配和样本数据都是在dada2管道教程之后完成的,到目前为止我读过的所有内容都表明OTU表有序列是正常的作为列名。

我很困惑,因为我的分类对象已经分配了从每个序列读取的Kingdom到Genus的分类,但是我没有看到使用这些分配与系统发生树匹配的方法,而不是从OTU的序列读取表

我确信这可能是一件简单明了的事情,我很遗憾,但是我们非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

你是对的,树和OTU表和税表需要具有相同的名称。通常,人们不直接从SILVA下载树,而是从一个dada2序列中创建一个本地树。在本文by Callihan et al.中,作者讨论了使用PHANGORN制作这样一棵树。这应该会生成一个树文件,其中序列作为与其余数据兼容的分支的名称。如果您还有其他问题,请尝试发布一个可重现的数据子集,例如ps对象只进行少量样本和五个最丰富的分类,也许我们互联网用户可以识别问题。