如何根据taxid(或taxname)快速获得taxname(或taxid)?

目录

需求

我有一个物种taxonomy ID的list,想获得相应的物种名,不要一个个去NCBI Taxonomy官网查。反之根据物种名list查询对应的taxid。

实现

因为之前没怎么用过,我的第一个想法是通过下载到集群的taxonomy数据库文件来匹配。一般下载下来的数据库会有names.dmp和nodes.dmp文件,分别是物种层级关系文件和taxid与物种名对应文件。但我想要的只是species这个层级的,所以要结合这两个文件写个小程序才能实现,并且很可能出错,因为我不知道到底哪个才是标准的species name。

比如说,我想要知道taxid为10090的物种名,在names.dmp文件中有如下这么多对应关系:
如何根据taxid(或taxname)快速获得taxname(或taxid)?

其实,NCBI的Taxonomy数据库自带了一个叫TaxIdentifier的工具(https://www.ncbi.nlm.nih.gov/Taxonomy/TaxIdentifier/tax_identifier.cgi),可以轻松转换。
如何根据taxid(或taxname)快速获得taxname(或taxid)?
如上图我输入一个taxid list,直接得到以下结果:
如何根据taxid(或taxname)快速获得taxname(或taxid)?

通过选择full taxid lineage,也可以得到该物种的所有谱系关系:
如何根据taxid(或taxname)快速获得taxname(或taxid)?
反过来,通过taxname来获得taxid也是一样的,不过要注意名字的规范性。

可见在生物学问题研究上,很多*已经造成了,要学会搜索和使用。关键还是需求问题。

上一篇:ClickHouse 在字节广告 DMP& CDP 的应用


下一篇:mac终端,如何在docker中导入oracle的dump文件