【问题标题】:ete3: How to get taxonomic rank names from taxonomy id?ete3:如何从分类 id 中获取分类等级名称?
【发布时间】:2018-02-19 01:41:09
【问题描述】:

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

在大多数情况下,这很容易,但如果有细菌的亚种和菌株,这可能会让人感到困惑。

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

【问题讨论】:

  • 你应该问biostars.org
  • 有没有办法迁移这样的问题?

标签: python bioinformatics taxonomy ncbi ete3


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2017-10-07
    • 2017-09-20
    • 2011-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-24
    • 1970-01-01
    相关资源
    最近更新 更多