Biodiversité -
Outils disponibles
Récupérer les séquences Aligner Phylogénie Biodiversité Litterature Liens Utiles
Related web pages: list of tree visualisers
Une fois qu'on a un jeu de séquences (soit PCR &
clonage, soit isolation de plein de souches) , le travail du
bioinforaticien peut
commencer. Les étapes suivantes sont
généralement accomplies les unes après
les autres.
1/ Récupérer les séquences.
C'est bien beau d'avoir son jeu de données. Mais
généralement, on veut
également savoir si d'autres séquences similaires
(ou identiques) n'ont pas été
également retrouvées dans d'autres circonstances.
Heureusement maintenant nous disposons de bases de données
publiques de séquences, car pour pouvoir publier un article,
le chercheur doit déposer ses séquences et
obtenir un numéro d'accession pour chaque
séquence (voir mon cours à ce sujet).
En fait on peut récupérer des jeux de
séquences, soit par similarité, soit
par mots clés.
Par similarité.
C'est la méthode la plus utilisée.
Généralement on le fait en utilisant le logiciel
BLAST qui permet en partant d'une séquence donnée
(séquence Query) de trouver les séquences similaires
présentes dans un jeu de donnée
(séquences Subject, dans une base de données).
Voir la page FAQ
au NCBI avant toute chose !!! Voir également mes tutoriel1 et tutoriel2
Pour ce faire on dispose de trois moyens.
Utilisation
d'un serveur web.
top
- C'est la méthode la plus communément utilisée !
- ATTENTION : sur
chaque serveur
les résultats sont différents car ils ne
construisent pas les bases de données pour blast de
manière identique ! Voir mon article (en anglais) sur le sujet.
-
EBI : vous n'aurez pas les séquences de l'environnement,
donc vous verrez plus
facilement quelles espèces cultivées ont des séquences similaires à la votre.
-
NCBI : vous aurez globalement tout. Peut être pas les
séquences WGS (à vérifier)
-
AVANTAGE : vous ne vous préoccupez pas des mises
à jour des bases
sous-jacentes.
-
INCONVENIENT : vous êtes obligé de lancer une par
une les
séquences. Si vous avez 200 séquences, cela
devient vite fastidieux !
- ATTENTION quand même à bien
paramétrer BLAST (Filtre, W) selon ce que vous voulez (voir les tutoriels ci-dessus).
Utilisation d'un service sur un serveur.
top
- Vous avez l'autorisation de vous connecter en telnet sur
un serveur qui a formaté plein de bases pour BLAST
(typiquement : Infobiogen).
- QUE DES AVANTAGES :
- Vous ne vous souciez pas de la mise à
jour des bases
- Vous avez toute la puissance du BLAST en local
- Vous n'avez pas de souci quant à la
taille mémoire
- Vous pouvez utiliser l'option -a (si cela est
permis par le serveur), ce qui permet de tourner en multi-processeurs.
- ATTENTION :
le fichier de sortie peut dépasser les quotas de disque qui
vous sont alloués !
- Vous pouvez utiliser les services disponibles sur le
NCBI.
- Le client réseau pour BLAST : 'blastcl3'. Ceci
permet de soumettre un fichier de plusieurs séquences (au format
fasta). Aucune installation requise à part le client dont
les exécutables
existent pour plusieurs plateformes UNIX, Windows et Macintosh
(pour Windows par exemple, télécharger
netblast-2.2.13-ia32-win32.exe - je pense que les Linuxiens sont assez
grands pour savoir quoi télécharger :-) .
- NCBU URL
API.
- L'URLAPI est une API permettant d'accéder au système duNCBI. Il permet d'encoder des requêtes
HTTP en direction des serveurs du NCBI.
- les requêtes sont envoyées vers le programme "NCBI cgi-bin":
- Les avantages sont les suivants :
- Aucune installation locale de BLAST ou de bases de données,
- compatibilité arrière du code,
- évite de "hacker" le NCBI avec des requêtes cgi.
- N'importe quel browser HTTP ou application capable
d'envoyer un flux html peut être utilisée.
Le site du NCBI contient des exemples pour Perl, C et Lynx. Dès
que j'ai un peu de temps, je mettrais ici un exemple en Python.
Utilisation en local.
top
- C'est souvent la méthode la plus efficace,
mais qui nécessite un certain travail. Il faut :
- Récuperer les sources
de BLAST et installer BLAST sur sa machine (lire la doc au NCBI).
- Récupérer le jeu de
données qui sera la base de données
cherchée (ncbi, ebi).
- Je vous conseille plutot de passer par un
client ftp (filezilla ou tout simplement, ftp, open,
anonymous).
- Importer
les séquences au format fasta (pas EMBL ou
GenBank!)
- Attention à la
décompression sous windows, les fichiers sont Unix
d'origine.
- Attention également
à bien savoir ce que vous voulez importer ; il y a beaucoup
de fichiers.
- Finalement, il faut connaitre les distinctions
ENV, WGS, etc. Voir la doc sur les sites ebi et ncbi (voir aussi mon
cours).
- Décompresser les fichiers ad hoc
- Formatter ces fichiers avec l'utilitaire formatdb
(cf package blast et docs)
- Créer
votre jeu de séquences query au format fasta
- Lancer : blastall blastn .... (voir la doc)
- Avantages : on n'est pas limité par le
nombre de séquences, ni le paramétrage de blast
qui peut être
très fin.
- Avantages : on peut blaster sur ses propres bases de
données.
- Inconvénient : il faut faire un peu
de ligne de commande.
- MAIS : on commence à trouver des utilitaires qui
"wrappent" la ligne de commande au sein d'une interface graphique
facile à utiliser.
- Durand P, Canard L, Mornon JP. Visual BLAST
and visual FASTA: graphic workbenches for interactive analysis of full
BLAST and FASTA outputs under MICROSOFT WINDOWS 95/NT. Comput Appl
Biosci. 1997 Aug;13(4):407-13.PMID: 9283755
- Buisine N, Chalmers R. yBlast, a graphical
front end for the standalone BLAST suite. Biotechniques. 2004
Dec;37(6):987-9. PMID: 15597548
- Dowd SE, Zaragoza J, Rodriguez JR, Oliver MJ, Payton PR.
Windows .NET Network Distributed Basic Local Alignment Search Toolkit
(W.ND-BLAST).BMC Bioinformatics. 2005 Apr 8;6(1):93.PMID: 15819992
Ce qu'il reste
maintenant à faire.
top
Vous avez récupéré une liste de
numéros d'accessions de séquences similaires. Il
faut maintenant récupérer ces
séquences, les aligner avec les votres, etc.
Or la récupération de séquences,
même si elle est facilitée par l'existence de
liens vers les fichiers de séquences peut vite devenir
fastidieuse...
On voudra donc récupérer ces séquences
par mots clés
Par mots clés.
top
L'outil BLAST est un formidable outil, mais il n'est pas toujours
adapté à la récupération de
séquences :
- Certaines séquences sont assez divergentes (ITS
par exemple) et même si vous fixez W=7 dans BLAST, vous
n'êtes pas certain de récupérer toutes
les séquences intéressantes.
- Il est très très difficile de
paramétrer BLAST pour qu'il retrouve TOUTES les
séquences similaires et QUE les séquences
orthologues.
- Parfois une entrée EMBL peut contenir bien plus
que la séquence qui vous intéresse ! Il faut
alors procéder à une extraction manuelle !
Pour résoudre ces problèmes, on
procède alors à une
récupération de séquences par mots
clés. Ces mots clés peuvent être :
- Des numéros d'accession
- Des noms d'espèces ou de taxons
- Des noms de gènes ou de produits de
gènes
- ...
Pour ce faire nous avons à notre disposition plusieurs
outils :
- Entrez
au NCBI.
top
- Je déconseille fortement son utilisatIon pour
récupérer des séquences
précises (voir article EmblEx pour plus de
détails)
- SRS
(EBI et des centaines de serveurs à travers le monde, serveurs publics)
- Parfait pour récupérer des
entrées (utiliser le formulaire standard) :
- à partir de numéros d'accessions
- pour des taxons précis
- pour des mots clés composés
uniquement d'un seul mot
- L'utilisation du formulaire étendu reste
complexe, ainsi que le langage GETZ. SRS est parfaitement
adapté pour la navigation entre les bases de
données (link de SWISSPROT sur EMBL, etc.), mais manque de
puissance et de finesse pour
- Récupérer des sous
séquences dans une entrée avec plusieurs
gènes.
- SRS (tel qu'il est généralement installé) ne sait pas travailler sur des mots composites (exemple
: "internal transcribed spacer", "transcription factor",...)
- Solution : demander une licence (gratuite pour les chercheurs
du Public) ; installer SRS ; formatter les bases dont vous avez besoin.
(Bonne Chance :-).
- ACNUC (pbil acnuc).
- En tant que formulaire web sur pbil.
- Comme un client (console) à
télécharger.
- Sous la forme d'API (python en particulier)
- Sous forme d'un client avec interface graphique en choisissant bien le "client" de l'architecture dont on dispose (Linux, PC-windows,MacOSX, Sun/Solaris).
- ACNUC est un formidable outil pour ce travail. Son
langage est simple et très puissant (lire la doc, en cas de
problème envoyer un mail à Manolo ou moi
même...)
- ATTENTION
: ACNUC souffre d'un petit bug, quand les mots clés
composites sont contenus dans plusieurs lignes.
- SPECIAL : Manolo m'a dit que ce bug est maintenant corrigé.
- Exemples d'utilisation du client ACNUC pour faire un tel travail.
- Etude de cas : extraction des séquences "SSU rRNA" pour les Alveolata.
- Etude de cas : extraction des séquences "SSU rRNA" pour les Protistes.
- EMBLEX
- EMBLEX est un ensemble de scripts PERL qui permettent :
- De parser avec la plus grande précision les
entrées EMBL pour extraire des séquences
très précisément à l'aide
de mots clés.
- De maintenir à jour les fichiers de
séquences EMBL à partir de serveurs ftp
- De générer des extractions dans
différents formats, et même de gérer
automatiquement une base de données au format BIOSQL.
- pdf
download
top
2/ Aligner les
séquences.
Il va falloir maintenant aligner toutes ces séquences avant de procéder aux post-traitement ad hoc.
Programmes d'alignements multiples.
Ici encore on a le choix entre outils en ligne, sur des serveurs par
telnet ou en local. Je détaillerais ici la liste des
logiciels librement téléchargeables.
- Clustalw. C'est bien sur la "référence"
en la matière.
- T-coffee.
Décrit comme meilleur que Clustal, il souffre d'un
défaut de lenteur pour les gros jeux de données... (voir Egalement M-Coffe).
- Les autres
programmes d'alignement.
- L'avantage de
Clustal ; Clustal sait :
- Aligner des nouvelles séquences sur un
alignement existant.
- Aligner des alignements (voir la section "profiles").
- Ceci n'est pas trivial !
- Si vous conservez vos alignements
précédents au sein d'une base de
données
- Si vous vérifiez et améliorez vos
alignements à la main (INDISPENSABLE).
- On ne sait jamais a priori pour un jeu de séquences données, quel algo donnera le "meilleur" alignement.
- Voir le benchmark 2005 de différents programmes.
Visualisation et modifications manuelles.
On ne peut jamais prendre tel quel le résultat d'un
alignement multiple et faire des post-traitement (et encore moins
prendre l'arbre guide de Clustal pour un arbre
phylogénétique : JAMAIS,
JAMAIS, JAMAIS !!!). Il faut :
- Vérifier et ajuster les alignements à
la main.
- Extraire les domaines qui sont réellement bien
alignés et homologues pour post-traitement.
- Autres pages de conseils :
Pour ce faire on dispose de très très nombreux
logiciels:
top
3/ Phylogénie.
Après avoir aligné les séquences, et avoir extrait
les domaines bien alignés, sans trop d'homoplasies apparentes et
positions apparemment orthologues, on désire faire une
phylogénie pour analyser et représenter l'état de
la diversité.
Normalement pour obtenir une phylogénie fiable, il est conseillé de :
- Utiliser trois méthodes (par exemple nj, mp et ml).
- Faire un arbre consensus pour idenfier les clades bien identifiés.
- Faire un Bootstrap pour identifier les clades robustes.
Souvent les analyses de diversité se font sur des
séquences assez courtes, et seules les parentés
approchées importent (on ne cherche pas à résoudre
des branches profondes). On pourra alors n'utiliser par exemple que la
méthode nj et un boostrap.
Les séquences chimères.
Si les séquences résultent d'une PCR & clonage, il
est possible que certaines séquences soit des chimères.
Si les séquences obtenues sont trop courtes, on ne pourra pas
les détecter. Sinon, on pourra soit :
- Utiliser l'outil ad hoc, Chimera Check, à la Ribosomal Database
- Utiliser Bellopheron : doc, server.
- Télécharger et installer Chimera and Cross-Over Detection and Evaluation, (pdf)
- Essayer de couper les séquences en deux parties 5' et 3',
blaster chaque partie et comparer les résultats (si vous devez
vérifier beaucoup de séquences).
- Garder en mémoire que :
- Ceci ne marche généralement que si deux domaines
conservés de plus de 200 bp sont présents en 5' et 3'.
- Les différentes méthodes donnent des résultats différents.
- A part la méthode 4 qui peut être
automatisée (mais demande une db locale sous-jacente), les
autres conduisent vers des traitements manuels assez fastidieux avec un
gros jeu de séquences.
top
Programmes de phylogénie.
Les paquetages de programmes pour faires des phylogénies.
- Joe Felsenstein (la
référence en la matière) en fait la liste sur son
site : liste des logiciels.
- Personnellement j'utilise en routine :
- Voir aussi
Les tout en un.
Ils combinent plusieurs outils (et souvent un programme d'alignement) au sein d'une interface graphique simple d'emploi.
NOTE : j'ai développé mon propre "tout en un" qui combine
les outils de recherche (BLAST et mots clés) , d'alignements, de
phylogénie et une série d'algos permettant de faire tout
ce dont j'ai besoin. Mais "ya pa de doc"!
top
Visualiser les arbres.
Ici encore, foison de logiciels. Je n'en citerais que quelques uns :
- NJplot,
multi-plateformes, simple d'emploi (prise en main en 5 minutes) mais
puissant. Il permet des changements simples de fontes et casses et
toutes les opérations de base. NJplot utilise l'allocation
dynamique de mémoire, la taille maximale des arbres qu'on peut
visualiser dépend de la RAM dont vous disposez (j'ai
visualisé des arbres de plus de 8000 feuilles).
- TreeDyn. Toutes plateformes. Le must du genre, pas d'installation, on télécharge et ça marche.
On fait tout avec TreeDyn !!! Le seul problème est que ce
logiciel est tellement complet que sa prise en main est très
difficile. Si vous faites beaucoup d'arbres et que vous combinez avec
des fichiers d'annotations, cela vaut vraiment le coup (voir les
tutoriels sur le site).
- TreeView. Tous systèmes.
- TreeWiz. En JAVA, pour les très très gros arbres (note un NJplot pour cela existe aussi).
- ...pour plus de détails (tous les détails :-)
4/ Biodiversité : mesures, estimateurs et indices.
Introduction
La mesure de la biodiversité n'est pas chose aisée. Il
s'agit de traduire des observations complexes, avec changements
d'échelles en des graphes lisibles et des nombres permettant de
comparer deux niches écologiques ou la variation d'une niche au
cours du temps. La traduction de données complexes ne peut pas
se faire sans perte d'informations.
Par ailleurs, comme il est impossible de recencer la totalité
des espèces présentes, on procède à un
échantillonage et il faut ensuite interpoler. Cette
interpolation est souvent hasardeuse, car elle repose sur des
modèles d'abondance, de répartition de "patchiness" a
priori, puisque ce sont ces valeurs qu'on cherche à estimer.
Les principales mesures qu'on veut sont :
- Nombre total d'espèces (ou de taxons).
- Species richness : nombre d'espèce (ou de taxons) présentes.
- Species evenness : la valeur est haute quand il n'y a pas d'espèces dominantes.
Pour visualiser et comprendre la diversité et ses changements, on calculera :
- Des courbes de raréfaction et d'accumulation des espèces (ou taxon).
- Une courbe d'accumulation (ou "collector’s curve") est la
courbe indiquant le nombre cumulé d'espèce nouvelles
trouvées au fur et à mesure qu'on échantillonne
aléatoirement.
- Divers indices de représentation de la diversité (voir articles ci-dessous, liste non limitative)
top
Articles
Sites.
top
Logiciels
Les logiciels suivants sont librement téléchargeables et
très utilisés. R contient également des fonctions
dans ce sens. Enfin certains sites proposent des outils en lignes, mais
pas aussi puissants.
5/ Litterature : études de biodiversité des micro-organismes.
En construction ...
top
6/ Liens utiles.
- AnaBench
- A Web/CORBA-based workbench environment integrating heterogeneous
bioinformatics software in a flexible manner
- EMBOSS online
- SDSC WorkBench
- GWFASTA
- A webserver intended for the objective
of aiding researchers in their quest for sequence similarity searching
and analysis on a genome wide scale.
Richard Christen. Avril 2006