1

我正在尝试使用用于 EMBOSS 的 biopython 包装器本地对齐一组大约 100 个非常长(> 8000 个序列)的序列。

本质上,我需要将我的 fasta 文件中的每个序列与该 fasta 文件中的每个其他序列本地对齐。到目前为止,我已尝试运行以下非常基本的代码:

from Bio.Emboss.Applications import NeedleCommandline
from Bio import AlignIO

seq_fname1 = 'gross-alignment.fasta'
seq_fname2 = 'gross-alignment.fasta'
needle_fname = 'pairwise_output.txt'
needle_cli = NeedleCommandline(asequence=seq_fname1, \
                               bsequence=seq_fname2, \
                               gapopen=10, \
                               gapextend=0.5, \
                               outfile=needle_fname)

"""This generates the needle file"""
needle_cli() 
"""That parses the needle file, aln[0] and aln[1] contain the aligned
first and second sequence in the usual format (e.g. - for a gap)"""
aln = AlignIO.read(needle_file, "emboss") 
print aln

但是当我这样做时出现以下错误:

C:\WINDOWS\system32\cmd.exe /c (python ^<C:\Users\User\AppData\Local\Temp\VIiAAD1.tmp) Traceback (most recent call last): File "<stdin>", line 14, in <module> File "C:\Python27\lib\site-packages\Bio\Application\__init__.py", line 495, in __call__ shell=use_shell) File "C:\Python27\Lib\subprocess.py", line 711, in __init__ errread, errwrite) File "C:\Python27\Lib\subprocess.py", line 959, in _execute_child startupinfo) WindowsError: [Error 2] The system cannot find the file specified shell returned 1 Hit any key to close this window...

我无法弄清楚这个错误的原因是什么,非常感谢任何帮助。

4

1 回答 1

0

你也可以尝试 seq_fname1、seq_fname2 的绝对路径吗?另外,我希望您在提升的命令提示符下尝试此操作

将其移至评论中的答案:)

于 2016-07-25T19:49:55.373 回答