我正在尝试使用以下命令创建一个带有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的序列读取表
我确信这可能是一件简单明了的事情,我很遗憾,但是我们非常感谢任何帮助!
答案 0 :(得分:0)
你是对的,树和OTU表和税表需要具有相同的名称。通常,人们不直接从SILVA下载树,而是从一个dada2序列中创建一个本地树。在本文by Callihan et al.中,作者讨论了使用PHANGORN制作这样一棵树。这应该会生成一个树文件,其中序列作为与其余数据兼容的分支的名称。如果您还有其他问题,请尝试发布一个可重现的数据子集,例如ps对象只进行少量样本和五个最丰富的分类,也许我们互联网用户可以识别问题。