Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ete3:如何从分类id中获取分类等级名称?_Python_Bioinformatics_Taxonomy_Ncbi_Ete3 - Fatal编程技术网

Python ete3:如何从分类id中获取分类等级名称?

Python ete3:如何从分类id中获取分类等级名称?,python,bioinformatics,taxonomy,ncbi,ete3,Python,Bioinformatics,Taxonomy,Ncbi,Ete3,我想用它来转换一组标识符,但我需要确切地知道为每个分类代码分配了哪个分类等级。下面显示的是一个有意义的转换示例,但我不知道如何标记一些分类调用。基本的分类等级是:(领域、王国、门、纲、目、科、属和种) 在大多数情况下,这很容易,但在有细菌亚种和菌株的情况下,这可能会令人困惑 如何让ete3指定谱系ID在分类等级中对应的等级? import ete3 import pandas as pd ncbi = ete3.NCBITaxa() taxon_id = 505 lineage = ncbi.

我想用它来转换一组标识符,但我需要确切地知道为每个分类代码分配了哪个分类等级。下面显示的是一个有意义的转换示例,但我不知道如何标记一些分类调用。基本的分类等级是:(领域、王国、门、纲、目、科、属和种)

在大多数情况下,这很容易,但在有细菌亚种和菌株的情况下,这可能会令人困惑

如何让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

使用
ncbi.get_rank()
获取
{id:name}
的字典,然后执行一些基本转换以获取
{name:taxonomy}

您应该问,有没有办法迁移这样的问题?