2017-09-10 74 views
2

我想用它来转换一堆标识符,但我需要确切地知道哪个分类等级被分配给每个分类标准代码。下面显示的是一个有意义的转换示例,但我不知道如何标记某些分类调用。基本的分类等级是:(域,王国,门,类,次序,家庭,属和物种)https://en.wikipedia.org/wiki/Taxonomic_rankete3:如何从分类标识中获得分类级别名称?

对于大多数情况下,它很容易,但在细菌的亚种和菌株的情况下,这可能会引起混淆。

如何获得ete3来指定谱系ID在分类级别中对应的排名?

import ete3 
import pandas as pd 

ncbi = ete3.NCBITaxa() 
taxon_id = 505 
lineage = ncbi.get_lineage(taxon_id) 
Se_lineage = pd.Series(ncbi.get_taxid_translator(lineage), name=taxon_id) 
Se_lineage[lineage] 


1      root 
131567 cellular organisms 
2     Bacteria 
1224   Proteobacteria 
28216  Betaproteobacteria 
206351   Neisseriales 
481   Neisseriaceae 
32257    Kingella 
505   Kingella oralis 
Name: 505, dtype: object 
+0

你应该问http://biostars.org – Pierre

+0

有没有办法迁移这样的问题吗? –

回答

0

使用ncbi.get_rank()得到的{id:name}字典然后做一些基本的转换来获得{name:taxonomy}

相关问题