我正在尝试与Muscle的一些示例序列对齐来自opuntia.fasta(from BioPython manual)
from Bio.Align.Applications import MuscleCommandline
in_file = "C:/Try/opuntia.fasta"
out_file = "C:/Try/aligned.fasta"
muscle_exe = "C:/Program Files/Aligments/muscle3.8.31_i86win32.exe"
cline = MuscleCommandline(muscle_exe, input=in_file, out=out_file)
stdout, stderr = cline(in_file)
from StringIO import StringIO
from Bio import AlignIO
align = AlignIO.read(StringIO(stdout), "fasta")
print(align)
我不会在C:/ / /。
中得到任何东西错误讯息:
Traceback (most recent call last):
File "C:/Try/try.py", line 6, in <module>
stdout, stderr = cline()
File "C:\Python27\lib\site-packages\Bio\Application\__init__.py", line 517, in __call__
stdout_str, stderr_str)
ApplicationError: Non-zero return code 1 from '"C:\\Program Files\\Aligments\\muscle3.8.31_i86win32.exe" -in C:/Try/opuntia.fasta -out C:/Try/aligned.fasta' message '\x91\xa8\xe1\xe2\xa5\xac\xa5 \xad\xa5 \xe3\xa4\xa0\xa5\xe2\xe1\xef \xad\xa0\xa9\xe2\xa8 \xe3\xaa\xa0\xa7\xa0\xad\xad\xeb\xa9 \xaf\xe3\xe2\xec.'
我做错了什么? Python 2.7.10
答案 0 :(得分:0)
BioPython的MuscleCommandline
只是Muscle可执行文件的包装器。您需要从此处http://www.drive5.com/muscle/downloads.htm
下载并安装它。在您的情况下(Windows操作系统),您需要将exe
复制到某个位置,并在变量muscle_exe
中引用它。
答案 1 :(得分:0)
我发现了什么问题。 首先,所有文件的路径应该是相对的 第二,我换了
align = AlignIO.read(StringIO(stdout), "fasta")
带
align = AlignIO.read(out_file, "fasta")
它有效!