获取 BLAST 结果的前 10 个序列 Bio Python

发布于 2024-11-18 05:55:53 字数 449 浏览 4 评论 0原文

我想获得 BLAST 结果的前 10 个序列(只是序列,没有比对或分数或 e 值等)。我正在输入一个包含 5 个 fasta 文件的文本文件。所以我的输出应该是每个 fasta 文件的前 10 个爆炸命中。因此我的输出文件将有 50 个序列。

我正在通过 Bio.SeqIO 读取每个输入 fasta 文件,将其写入 temp.faa,然后通过子进程将其传递到命令行 BLAST,因为

blastp -db nr -query temp.faa -out out.faa -evalue 0.001 -gapopen 11 -gapextend 1 -matrix BLOSUM62 -remote -outfmt 2

输出有许多其他信息。我现在应该解析这个输出还是有更好的方法。

谢谢

P.S XML 可能是一种方法,但我没有找到相关的 NCBIXML 解析器语法。

I want to get top 10 sequences of BLAST results (just the sequences, no alignment or score or e-value etc). I am inputting a text file containing 5 fasta file. So my output should be top 10 blast hits of each fasta file.. therefore my output file will have 50 sequences.

I am reading each of my input fasta file through Bio.SeqIO, writing it as temp.faa and then passing it to command line BLAST through subprocess as

blastp -db nr -query temp.faa -out out.faa -evalue 0.001 -gapopen 11 -gapextend 1 -matrix BLOSUM62 -remote -outfmt 2

the output has lots of other information. Should I parse this output now or there's a better way.

Thanks

P.S XML might be a way but I didn't find a relavant NCBIXML parser syntax.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文