基于coi序列查询bold数据库进行分类群识别
bold_retriever的Python项目详细描述
这个脚本接受包含coi序列的fasta文件。它质疑粗体字 数据库http://boldsystems.org/以便获得分类鉴定 基于序列。
向这边跑
克隆存储库:
cd $USERAPPL git clone https://github.com/carlosp420/bold_retriever.git
安装依赖项(python2.7):
cd bold_retriever module load biopython-env pip install -r requirements.txt
运行软件
您必须从粗体中选择一个可用的数据库 http://www.boldsystems.org/index.php/resources/api?type=idengine 并将其作为参数输入:
- Cox1_物种
- Cox1
- 公共物种
- 二氧化碳浓度L640bp
例如:
python bold_retriever.py -f ZA2013-0565.fasta -db COX1_SPECIES
输出:
seq_id bold_id similarity division class order family species collection_country OTU_99 FBNE064-11 1 animal Insecta Neuroptera Hemerobiidae Hemerobius pini Germany OTU_99 NEUFI079-11 1 animal Insecta Neuroptera Hemerobiidae Hemerobius pini Finland OTU_99 FBNE172-13 0.9937 animal Insecta Neuroptera Hemerobiidae Hemerobius atrifrons Germany OTU_99 FBNE162-13 0.9936 animal Insecta Neuroptera Hemerobiidae Hemerobius contumax Austria OTU_99 TTSOW138-09 0.9811 animal Insecta Neuroptera Hemerobiidae Hemerobius ovalis Canada OTU_99 CNPAH380-13 0.9811 animal Insecta Neuroptera Hemerobiidae Hemerobius Canada OTU_99 CNKOF1602-14 0.9811 animal Insecta Neuroptera Hemerobiidae Hemerobius pinidumus Canada OTU_99 NRAS173-11 0.9748 animal Insecta Neuroptera Hemerobiidae Hemerobius conjunctus Canada OTU_99 SSBAE2911-13 0.9748 animal Collembola None None Collembola Canada OTU_99 CNPAQ117-13 0.9686 animal Insecta Neuroptera Hemerobiidae Hemerobius humulinus Canada
速度
bold\u retriever使用twisted库执行异步调用。 这加快了总处理时间:
完整文档
上的完整文档历史记录
- v1.0.0:使用twisted进行异步调用并提高速度。
- v0.2.4:重新组织输出文件中的列。查询API中的族
- 分类单元名称。
- V0.2.2:杀虫分类单元搜索。
- v0.2.1:在抓取web Public_BIN中为物种id杀死了bug。
- v0.2.0:为物种id刮网Public_BIN。
- V0.1.9:添加了请求ID测试和选项,以便在调试模式下运行功能。
- V0.1.8:修复了当粗体发送空的分类单元名称列表时出现异常的错误。
- V0.1.7:修复了当粗体发送空的分类单元名称列表时出现异常的错误。
- v0.1.6:当我们得到分类单元鉴定结果时,将其附加到文件中。
- V0.1.5:附加试验覆盖率92%
- v0.1.4:修复了分类单元搜索函数中的错误
- V0.1.3:覆盖率75%
- V0.1.2:PEP8和测试覆盖率69%
- v0.1.1:打包为python模块。
- v0.1.0:您可以指定哪些粗体数据应该用于fasta序列的blast。
- V0.0.7:捕获从粗体返回的XML的空、列表和文本的异常。
- v0.0.6:从粗体捕获格式错误的XML的异常。
- v0.0.5:当粗体发送{"481541":[]}等有趣数据时捕获异常。