Biopython/EMBOSS WindowsError [Error 2]

213 Views Asked by At

I am trying to locally align a set of around 100, very long (>8000 sequence) sequences using the biopython wrapper for EMBOSS.

Essentially I need to locally align each sequence in my fasta file against every other sequence in that fasta file. Thus far I have tried to run the very basic code below:

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

But I get the following error when I do so:

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...

I can't figure what the cause of this error is, any help would be very much appreciated.

1

There are 1 best solutions below

0
be_good_do_good On

can you try absolute paths for seq_fname1, seq_fname2 as well? Also, i hope you are trying this out in elevated command prompt

Moving it to answer from comments :)