2017-08-09 66 views
0

我剛學會使用python(和Biopython),所以這個問題可能會說明我的經驗不足。Biopython肌肉多重序列比對?

爲了在一個文件中(FileA.fasta),我用下面的代碼進行MSA序列:

from Bio.Align.Applications import MuscleCommandline 
inp = 'FileA.fasta' 
outp = 'FileB.fasta' 
cline = MuscleCommandline(input=inp, out=outp) 
cline() 

我得到以下錯誤:

ApplicationError 
... 
Non-zero return code 127 from 'muscle -in FileA.fasta -out FileB.fasta', message '/bin/sh: muscle: command not found' 

我知道,這與可執行文件不在工作PATH中有關。 Biopython教程建議我更新PATH以包含Muscle Tools的位置,並給出了Windows的示例,但我不知道如何爲MAC執行此操作。

請幫忙。

謝謝。

回答

0

首先確保你知道你安裝的地方muscle。如果,例如,您在安裝肌肉:

/usr/bin/muscle3.8.31_i86darwin64 

那麼你edit /etc/paths有:

$ sudo vi /etc/paths 

每個條目由換行符分隔:

/usr/local/bin 
/bin 
/usr/sbin 
/sbin 

添加適當的路徑(這個例子/usr/bin)到列表中。保存與wq!

現在,請確保muscle在您的道路上。嘗試運行

muscle -in FileA.fasta -out FileB.fasta 

如果可行,那麼BioPython代碼也應該可以工作。