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

1 投票
1 回答
2720 浏览
提问于 2025-04-16 20:50

我想要获取BLAST结果中的前10个序列(只要序列,不要比对信息、分数或e值等)。我输入的是一个包含5个fasta文件的文本文件。所以我的输出应该是每个fasta文件的前10个BLAST结果,这样我的输出文件就会有50个序列。

我通过Bio.SeqIO读取每个输入的fasta文件,然后把它写成temp.faa文件,再通过subprocess把它传给命令行BLAST。

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

但是输出结果里有很多其他信息。我现在应该解析这个输出吗,还是有更好的方法?

谢谢

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

1 个回答

撰写回答