在基因组数据中预测前噬菌体和其他病毒样区域的工具
viralrecall的Python项目详细描述
病毒召回
viralrecall是一个灵活的命令行工具,用于预测基因组数据中的前噬菌体和其他类似病毒的区域。 此代码正在开发中,可能会随着错误的发现而更改。
依赖关系
viralrecall是用python 3.5.6编写的,需要biopython、matplotlib、numpy和pandas。 viralrecall分别使用prodigal和hmmer3进行蛋白质预测和hmm搜索。使用前请确保这些工具已安装在您的路径中。 一个Unix系统,您应该能够使用以下工具安装这些工具:
< Buff行情>sudo apt安装浪子
和
< Buff行情>sudo apt安装hmmer
或者,如果您没有sudo特权,可以使用conda:
< Buff行情>Conda安装Prodigal-C Bioconda
和
< Buff行情>conda安装hmmer3-c bioconda
安装
请确保您使用的是>;Python3.5.2并安装了相应的Python模块。如果这是一个问题,请使用conda创建一个python环境(请参见这里的https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html" rel="nofollow">https://conda.io/projects/conda/en/latest/user-guide/tasks/manage environments.html) viralrecall在ubuntu 16.04上进行了测试,应该可以在大多数基于unix的系统上工作。要查看"帮助"菜单,请使用:
< Buff行情>python viralrecall.py-h
数据库
viralrecall使用两个主要的hmm数据库来分析基因组数据中的病毒特征。首先是pfam,它是一个广泛的特异性数据库,可以检测细胞有机体基因组中常见的许多蛋白质家族。这里的pfam数据库已经被修改以删除常见的病毒蛋白家族。第二个hmm数据库是vogdb,它是已知病毒蛋白家族的综合数据库。完整的vog hmm数据库相当大,在某些情况下,用户可能希望使用较小的集合来加快运行时间。我们已经创建了三个不同大小的vog数据库(all、large和small)。希望执行彻底搜索的用户应该使用"all"数据库,而希望更快搜索的用户可能希望使用"small"数据库("large"数据库是一个中等大小的选项)。
数据库文件可从弗吉尼亚理工大学图书馆系统下载。要下载并解包,请导航到包含viralrecall.py脚本的文件夹,然后键入:
< Buff行情>wget-o hmm.tar.gzhttps://data.lib.vt.edu/downloads/8k71nh28c
然后
< Buff行情>tar-xvzf hmm.tar.gz
基本用法
要测试viralRecall是否正常运行,请键入:
< Buff行情>python viralrecall.py-i示例/test_seq.fna-p test_outdir-t 2-db small-f
结果应位于test_outdir文件夹中。 输出文件夹将包含:
*.faa:使用prodigal从输入文件预测的蛋白质
*.full_annot.tsv:预测ORF的完整注释表。
*.prophage.annot.tsv:仅对病毒区域的注释(仅在发现某些病毒区域时出现)
*summary.tsv预测病毒区的汇总统计。
*.pfamout pfam hmmer3搜索的原始输出
*.vogout vogdb hmmer3搜索的原始输出
此外,对于每个病毒区域,viralrecall将打印出找到的区域的蛋白质和核苷酸序列的.faa和.fna文件。 请确保仅使用.fna文件作为输入。
选项
根据您的首选项和正在分析的数据,可以在viralrecall中更改几个参数。影响结果的重要参数是:
-s,--minscore这是一个基因组区域需要的平均分数,以便通过过滤器并报告为病毒区域。分数由hmmer3分数计算得出,分数越高表示与vog数据库的匹配度越高,分数越低表示与pfam数据库的匹配度越高。默认值为10。
-w,--窗口 用于计算移动平均值的滑动窗口的大小。一个较小的窗口可能有助于预测短病毒区域,但可能会将大病毒区域分割成多个片段。
-m,--minSize 要报告的病毒区域的最小大小(以千碱基为单位)。
-v,--minvog 必须在一个区域中记录的针对VOG数据库的最小点击次数,以便报告该数据库(较大的值=较高的置信度)。
例如,如果我们只想恢复长的、定义良好的病毒区域,可以使用以下命令:
< Buff行情>python viralrecall.py-i示例/test_seq.fna-p testout-s 15-m 30-v 10
在这里,我们只要求平均得分为15分、至少有30千碱基长、至少有10个VOG点击率的地区。
如果我们想用不同的参数快速地重新进行上述分析,但是不需要重新进行基因预测和hmmer3搜索,我们可以使用-r标志:
< Buff行情>python viralrecall.py-i示例/test_seq.fna-p testout-s 15-m 30-v 10-r
这将快速重新计算结果,并允许您确定最适合分析的结果。
批处理模式
如果您有许多要测试的序列,可以将它们全部放在一个文件夹中并使用批处理模式。这里输入(-i)应该指向一个包含.fna文件的文件夹。 基本用法是:
< Buff行情>python viralrecall.py-i示例/testfolder-p文件夹-b
所有输出文件都应该在folderout目录中有自己的文件夹。您还可以使用-b标志和-r标志快速重新计算。
引文
此工具的引用待定。如果您打算在一篇文章中使用此工具,请发送电子邮件至Frank Aylward,询问如何以最佳方式引用Faylward的工作
此外,由于此工具需要浪子和hmmer3,请引用此工具。他们的引文是:
凯悦等Prodigal:原核基因识别和翻译起始位点识别。BMC生物信息学,2010年。 Eddy,"基于概率推理的新一代同源搜索工具"。基因组信息学,2009年。