2017-08-09 4 views
0

Je viens d'apprendre à utiliser python (et Biopython) donc cette question peut témoigner de mon inexpérience.Alignement de séquence multiple musculaire avec biopython?

Afin de réaliser MSA de séquences dans un fichier (FileA.fasta), j'utilise le code suivant:

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

Je reçois l'erreur suivante:

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

Je sais que cela a quelque chose à voir avec l'exécutable n'étant pas dans mon PATH de travail. Le tutoriel Biopython suggère que je mette à jour le PATH pour inclure l'emplacement de Muscle Tools et il donne un exemple de ceci pour Windows, mais je ne sais pas comment le faire pour MAC.

Aidez-nous s'il vous plaît.

Merci.

Répondre

0

Assurez-vous d'abord de savoir où vous avez installé muscle. Si, par exemple, vous avez installé muscle:

/usr/bin/muscle3.8.31_i86darwin64 

vous edit /etc/paths avec:

$ sudo vi /etc/paths 

Chaque entrée est séparée par des sauts de ligne:

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

Ajouter le chemin approprié (en cet exemple /usr/bin) à la liste. Enregistrer avec wq!

Maintenant, assurez-vous que le muscle est sur votre chemin. Essayez d'exécuter

muscle -in FileA.fasta -out FileB.fasta 

Si cela fonctionne, le code BioPython devrait également fonctionner.