2009-11-22 3 views
3

Je sais que cela est une question très précise concernant BLAST et bio-informatique, mais va ici:Personnalisation de la sortie de BLAST?

Je cherche à utiliser BLAST autonome (j'ai déjà téléchargé et testé en cours d'exécution sur la ligne de commande) pour exécuter une séquence d'ADN alignement (blastn). Je dois être capable de fournir à la fois mon propre fichier de requête (format fasta) et mon propre fichier de base de données (également format fasta). La clé est que je veux que le programme ne produise que 2 champs plutôt que les rapports détaillés qu'il produit habituellement. I seulement veut le score le plus élevé et la valeur e pour que l'alignement soit produit. L'idée est qu'une fois que cela fonctionne, je peux l'emballer dans mon propre programme de contrôle et l'exécuter automatiquement plusieurs fois avec des séquences de requêtes différentes et consigner les scores et les valeurs électroniques.

Je sais que c'est long, mais est-ce que quelqu'un a une idée sur comment je peux y arriver? Les deux obstacles pour moi utilisent mon propre fichier de base de données et personnaliser la sortie.

Répondre

2

en fait, il est simple: blastall a plusieurs options de ligne de commande qui vous aidera:

  • à la sortie que le coup le plus fort simple pour chaque requête: -v 1 -b 1
  • à la sortie dans le tableau Format: -m 8

vous donc exécuter quelque chose comme ceci:

blastall -p blastn -i queries.fasta -d database -v1 -b1 -m8 > resultTable.txt 

La sortie de table a plusieurs colonnes cependant. Je ne me souviens pas de l'ordre des colonnes, mais vous pouvez utiliser l'outil cut pour sélectionner uniquement vos colonnes d'intérêt. Par exemple, la commande suivante sélectionnerait colonnes seulement 1, 7 et 8 de la blastoutput

cut -d '\t' -f 1,7,8 < resultTable.txt 

yannick

+0

Salut Yannick - Je vous remercie beaucoup pour votre réponse. Je peux presque faire tout ce que je veux ... s'il vous plaît voir les mises à jour que j'ai postées à ma question originale ... peut-être que vous pouvez aider avec cela aussi? – oym

+0

ne l'oubliez pas, j'ai trouvé la page qui liste tous les paramètres pour blastall – oym

2

La réponse de Yannick couvre comment obtenir la sortie spécifique dont vous avez besoin de blastall - la deuxième chose que vous êtes préoccupé par A propos utilise votre propre fichier de base de données. Standalone BLAST fournit les outils dont vous avez besoin pour cela aussi.

Avec blastall, vous devriez également avoir une copie d'un programme appelé formatdb, vous pouvez le fournir avec votre base de données de séquences fasta, et il le formatera correctement pour BLAST. Pour une base de données de nucléotides, exécutez la commande suivante:

formatdb -i input_database.fa -p F

Cela produira un certain nombre de fichiers dans votre répertoire de travail (input_database.fa.nhr, input_database.fa.nin, input_database.fa.nsq) que vous pouvez utiliser dans votre commande blastall en utilisant le nom d'origine votre base de données (par exemple, omettez le suffixe .n*).

HTH

PS formatdb -h vous donnera une liste complète des options pour formatdb

Questions connexes