我正在尝试使用Bio.BLAST.Applications与biopython一起运行本地BLAST。但是,在运行以下代码时:
from Bio.Blast.Applications import NcbiblastpCommandline
result = r"C:\Users\Uzytkownik\Desktop\tests\result.xml"
q = r"C:\Users\Uzytkownik\Desktop\tests\fastas\my_example2.faa"
database = r"C:\Users\Uzytkownik\Desktop\tests\my_examplemultif.faa"
blastp_cline = NcbiblastpCommandline(query = q, db = database, evalue = 0.001, outfmt=5, out = result)
stdout, stderr = blastp_cline()
我收到一个错误,说明:
ApplicationError: Non-zero return code 1 from 'blastp -out C:\\Users\\Uzytkownik\\Desktop\\tests\\result.xml -outfmt 5 -query C:\\Users\\Uzytkownik\\Desktop\\tests\\fastas\\my_example2.faa -db C:\\Users\\Uzytkownik\\Desktop\\tests\\my_examplemultif.faa -evalue 0.001', message "'blastp' is not recognized as an internal or external command,"
我试着用子进程和操作系统运行这个程序,但每次都出现相同的错误
当我通过命令行运行查询时,一切正常(我使用的是blast 2.9.0+),所以我真的不确定问题出在哪里。如果有任何帮助,我将不胜感激
首先找到
blastp
可执行文件的安装位置,并将其作为NcbiblastpCommandline
的参数如果现在执行
print(blastp_cline)
,它应该打印出将要运行的完整命令。通过复制/粘贴此输出并从命令行运行它,双重检查此操作是否有效。如果这行得通,那么应该也行
相关问题 更多 >
编程相关推荐