处理工具_NCBI Taxonomy数据处理:TaxonKit工具详解

目录

遇到的问题taxonkit 概述taxonkit安装安装下载依赖数据taonkit使用1)列出给定taxonomy id的子分类树2)从taxid获取完整谱系3)重新构造谱系的格式4)通过物种拉丁名查询回到问题一个也不能少参考

遇到的问题

在做宏基因组分析时,通过基因注释得到一个包含10k之多种微生物物种名list(scientific name),现在想统计这些物种在界、门、纲、目、科、属等不同分类水平的总的数量。这就是本篇推送想解决的问题,10000多种微生物的拉丁名称示例如下: [NeptuneYT$] head scientific_name.txt

Abiotrophia defectiva
Abiotrophia sp.
Absiella dolichum
Acaryochloris marina
Acetanaerobacterium sp.
Acetivibrio cellulolyticus
Acetoanaerobium noterae
Acetoanaerobium sticklandii
Acetobacter aceti
Acetobacter ghanensis

[NeptuneYT$] wc -l all_bacteria_genomic_fna.species

10146 all_bacteria_genomic_fna.species

打开NCBI Taxonomy输入一个拉丁名,如Acetobacter aceti,搜索之后默认获得完整的lineage信息,但我们这里只需要7个层次的,因此再点击一次Lineage获得缩略的谱系信息,如下:

5122d8ee2ed077d882ca1047add4a0bd.png


得到的Lineage字段后以分号隔开的就是对应于7个分类层次的结果,后续以分号切割之后统计不同列的结果即可。
很自然的,我们想到爬虫,其搜索接口为https://www.ncbi.nlm.nih.gov/taxonomy/?term=拉丁名(空格以+号连接),如https://www.ncbi.nlm.nih.gov/taxonomy/?term=Acetobacter+aceti,然后对结果页面进行后续解析。但是10k之多的查询量,必然要设置爬取频率,否则就要被NCBI关小黑屋了,考虑时间代价,果断放弃。其实,从网上查询的原理也是基于Taxonomy后台的数据库,而这个文件在ftp://ftp.ncbi.nih.gov/pub/taxonomy/taxdump.tar.gz,可以从解压之后的names.dmp和nodes.dmp文件写代码解析,但是其内容过于妖孽,为了少撸掉点头发,因此先看看网上是否有造好的轮子。

d22c1cd5b1572eebfae79645e451e7fb.png

果然,动动手指发现有三个工具可以实现以上诉求,ETE toolkit, taxadb和 TaxonKit,这里选择最近发表的TaxonKit,优势在于其直接基于names.dmp和nodes.dmp文件的解析,本地搜索速度块,尤其是大批量的查找和格式转换,另外使用也极简单。

d5b2709d65c895ad64a00fed31cd9662.png

TaxonKit paper
相比于另外两种工具,TaxonKit在处理大批量数据时更快,占用内存也可接受

taxonkit 概述

说完废话,进入今天的主题,说说TaxonKit这个工具的使用。
TaxonKit是处理NCBI Taxonomy数据库中结构性数据的良心工具,19年1月在bioRxiv上online,作者Wei Shen, Jie Xiong,隶属于Department of ClinicalLaboratory, General Hospital of Western Theater Command,特地查了一下,原来是位于成都的中国人民解放军西部战区总医院(好牛的感觉),看来生信真是无处不在。

e9b65802faf147b6955908e93c929e7a.png


它是Go语言编写的,可以在Windows,Linux和Mac OS X运行,直接使用NCBI Taxonomy的数据(需手动下载)而无需构建本地数据库。

taxonkit安装

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值