Bonjour, et bienvenu dans mon premier article concernant mon script Perl Blast2Gb.pl. Ce dernier illustre parfaitement ce qu'on peut faire facilement et rapidement avec un script Perl : du traitement de texte. Cet outil permet de faciliter la vie et de transformer une tâche laborieuse en un traitement rapide et efficace.
En effet, qui ne s'est jamais retrouvé avec une sortie de BLAST qu'il voudrait regarder dans un programme de visualisation de séquences (comme Geneious par exemple) mais qui ne prend pas les sorties de BLAST ? Ou encore, devant soumettre un génome au NCBI, mais qui n'a pas envie de se taper tout le formatage à la main ? Eh bien, mon programme est là pour prendre une sortie xml d'un blastn, blastx, tblastn ou tblastx et la transformer en une sortie .gb (format Genbank) !
Bref, tout ça pour vous expliquer comment il s'utilise 🙂
Vous aurez besoin de 2 fichiers en entrée :
- Votre sortie de blast, en format xml (voir le manuel de blast pour plus d'infos) :
- Votre séquence d'entrée de blast en format fasta (la source), qui sert à coller la séquence à la fin du fichier gb. Il faut cependant que celle-ci ait une première ligne bien nommée si vous voulez que les cases soient correctement remplies, et que le nom soit propre avant que vous ne le blastiez : "gi|0000000|gb|AA000000.0| Name of the organism, complete genome (ou n'importequoi)"
Voilà à quoi ressemble l'aide :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
USAGE : perl Blast2Gb.pl ‑i InFile ‑s SourceFile [-c circular||linear] [-m 'molecular type'] [-r 0||1] -i : Your input has to be an xml blast output format (option 5). -r : It can be 0 for not reverse or 1 for reverse. If you want the reverse, the sourcefile is the db used for the blast. -a : It can be 0 for not all or 1 for all. It means that you want to print all the Hsp in a Hit (1), or just the best one (0). It is useful if you have exons (chose 1). -s : If your input has an odd name, please define your blast input fasta file this way : ">gi|0000000|gb|AA000000.0| Name of the organism, complete genome(or anything)" And it works better if the sequence is on one line. EXAMPLE : perl Blast2Gb.pl ‑i myinput.xml ‑s mydb.fasta ‑c circular ‑m 'genomic DNA' ‑r 0 ‑a 0 |
Quelques options sont disponibles :
- -r : elle est utile lorsque l'on contrôle la séquence à tester, et la base de données sur laquelle on blast. En effet, il est possible de faire un blast de la base sur nos séquences, c'est ce que j'appelle un reverse (d'où le ‑r), et il faut dans ce cas que Blast2Gb.pl fasse ressortir les bonnes infos. Il faut aussi lui donner le fichier fasta de la base en source.
- -a : utile quand on blast des exons. On veutdans ce cas que tous les hsp (voir dans le fichier xml) d'un hit apparaissent dans le .gb. il faut la passer à 1.
- -c : il est nécessaire de remplir cette option si on a un génome circulaire. Sinon, il sera considéré comme linéaire par défaut.
- -m : cette option est nécessaire pour bien remplir le .gb, j'ai besoin que vous passiez au programme l'information du type moléculaire, par exemple "genomic DNA". Il est nécessaire pour le bon fonctionnement du programme que ce soit en 2 mots.
Voilà tout ! Il traite un fichier .xml de 2Mo en moins de 10 secondes sur un iMac 27' Core i7@2,93Ghz, et donne un fichier .gb correctement formaté qui ressemble à ceci :
Si vous avez le moindre problème, faites-moi parvenir vos fichiers fasta, xml et votre erreur/problème, je m'efforcerai de le résoudre !
Le lien : Blast2Gb.pl
Et si vous voulez mettre en ordre votre .gb, SortGb.pl mais je ne l'ai pas mis à jour depuis quelques temps…
—
Les images sont des captures d'écran fournies par l'auteur et sous licence CC-by-SA 3.0.
La recherche menant à ces résultats a reçu un financement du Conseil de Recherche Européen (ERC) sous le 7ème programme-cadre de la Communauté Européenne FP7/2007–2013 convention de subvention no. 206205 : Genovir
Laisser un commentaire