Plan 1 Introduction 2 Interroger les banques de
Plan 1. Introduction 2. Interroger les banques de séquences (60%) 3. Construire sa banque de séquences (30%) 4. Utilisation des API (10%) 5. Pour aller plus loin Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Introduction 1. Historique 2. Un système de base de données et un outil d’interrogation 3. Principe général d’ACNUC 4. Accès aux programmes et aux bases 5. Déroulement de l’atelier Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Introduction Historique ACNUC est un système de gestion de bases de données dédié à la gestion des séquences biologiques, en particulier génomiques. Son développement a débuté en 1980. Il sert à la fois d'outil d'interrogation et de couche basse pour le développement de logiciel. Il reste le seul logiciel permettant l'interrogation, transparente pour l'utilisateur, des sous-séquences des séquences présentent dans les banques. Des développements récents avec Stéphane Delmote permettent d’interroger les banques à distance via un serveur de sockets Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Introduction Principe ACNUC est à la fois un système de base de données et un outil d’interrogation des données Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Introduction Principe Le principal géneral d’ACNUC repose sur l’indexation des fichiers de séquences annotées (EMBL, Gen. Bank, Swiss. Prot. . . ) Les différents champs des annotations sont indexés dans des fichier d’index (NOMS, ESPECES, MOTCLEFS, etc) qui sont mis en relation via des pointeurs. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Introduction Accès aux programmes et aux bases Les programmes, les bases de données et la documentation sont accessibles sur le site du PBIL: http: //pbil. univ-lyon 1. fr/ Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Introduction Déroulement de l’atelier Différents exercices et des exemples d’application sont proposés au cours de l’atelier. Cette présentation ainsi que les différents exemples de scripts sont téléchargeable à l’url: ftp: //pbil. univ-lyon 1. fr/pub/in 2 p 3/formation_acnuc/ DOCUMENTATION GENERALE: http: //pbil. univ-lyon 1. fr/databases/acnuc. html DOCUMENTATION LANGAGE DE REQUETE: http: //pbil. univ-lyon 1. fr/databases/acnuc/cfonctions. html#QUERYLANGUAGE Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Interroger les banques de séquences 1. 2. Premiers pas avec ‘Query. Win’ Le langage de requête • • • 3. requêtes simple séquences mères - séquences filles requêtes complexes Extraction des données • • 4. différents formats extraire des zones particulières dans les séquences Utilisation de ‘query’ • • 5. script simple script complexe Utilisation de ‘seqin. R’ • • interroger les banques à partir de R scripts mixtes R/query Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Premiers pas avec Query. Win « Query. Win » fonctionne sur toutes les plateformes : Unix/Linux, Mac, Windows (Apparence légèrement différente selon la plateforme) Existe en 2 versions: « locale » interroge les bases locales - query_win « local » est installé sur toutes les machines du labo - « client » interroge les bases à distance (via des sockets) - à telecharger Transparent pour l’utilisateur Téléchargeable sur le PBIL: http: //pbil. univ-lyon 1. fr/software/query_win. html Documentation accessible sur le PBIL: http: //pbil. univ-lyon 1. fr/software/doclogi/docacnuc/acnucwin/acnwian/aquerywin. html Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Premiers pas avec Query. Win Lancer Query_Win - version Mac: cliquer sur l’application Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Premiers pas avec Query. Win Lancer Query_Win - sur les clusters ( version locale) lancer query_win sur EMBL: >query_win embl Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Premiers pas avec Query. Win boutons de commande Lancer Query_Win - sur les clusters ( version locale) lancer query_win sur EMBL: >query_win embl fenêtre de commande langage de requête. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Premiers pas avec Query. Win Deux manières (non exclusives) de faire une requête: 1. en utilisant les boutons et les menus 2. en utilisant le langage de requête dans la fenêtre de commande Exercice 1 : sélectionner les séquence de souris dans EMBL • méthode 1: Cliquer sur les boutons select puis species et taper « mus » dans la fenêtre qui s’ouvre. Ensuite choisir l’option « build query » Observer la fenêtre de commande. Exécuter Recommencer en choisissant l’option « make list » Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Premiers pas avec Query. Win Exercice 1 suite • méthode 2: taper « sp=mus » dans la fenêtre de commande REMARQUE IMPORTANTE: Les requêtes effectuées avec la méthode 1 sont automatiquement affichées sous forme de langage de requête dans la fenêtre de commande et/ou la fenêtre qui affiche les listes. C’est un excellent moyen d’apprendre le langage de requête ACNUC A partir de maintenant, dans les exercices, essayez d’abord de répondre à la question en utilisant les boutons et observez l’équivalent en langage de requête. Peu à peu, vous pouvez essayer d’utiliser systématiquement le langage de requête Autre chose: Il existe un mode « HELP » dans Query_Win Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes simples Toutes les opérations sont possibles avec query_win (en cliquant ou en utilisant le langage) Quelques exemples élémentaires: -récupérer une séquence à partir de son nom -récupérer une séquence à partir de son numéro d’accession -récupérer les séquences d‘une espèce/d’un taxon -récupérer les séquences associées à un mot clef Autres exemples moins simples : -quelle est l’espèce associée à cette séquence ? -quels sont les mot clefs associés à cette séquence ? Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes simples -Les espèces sont tirées dans champs décrivant la taxonomie -Les mots clefs sont tirés de différents champs décrivant la séquences: le gène, la fonction, la similarité, le produit; EC number, etc. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes simples Le langage de requête ACNUC est décrit ici: http: //pbil. univ-lyon 1. fr/databases/acnuc/cfonctions. html#QUERYLANGUAGE Exercice 2 : Interroger Swiss. Prot Recupérer les séquences de chat (Felis cattus) en utilisant les boutons Recupérer les séquences de chat avec le langage de requête Comparer les résultats Exercice 2 bis : Interroger Swiss. Prot Recupérer les séquences de chat avec le numero taxonomique (Taxon. ID) du genre felis (tid=9682) Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes simples Le langage de requête ACNUC est décrit ici: http: //pbil. univ-lyon 1. fr/databases/acnuc/cfonctions. html#QUERYLANGUAGE Exercice 3 : Interroger Swiss. Prot Récupérer les séquences associées au mot clef « adenylate cyclase » en utilisant les boutons Récupérer les séquences associées au mot clef « adenylate cyclase » avec le langage de requête Regarder les différents champs des annotations. Ou se trouve adenylate cyclase? Faire la même chose dans Gen. Bank Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes simples Le langage de requête ACNUC est décrit ici: http: //pbil. univ-lyon 1. fr/databases/acnuc/cfonctions. html#QUERYLANGUAGE Exercice 4 : Interroger Gen. Bank Récupérer les séquences associées au gène BTG 1 Regarder les différents champs des annotations. Ou se trouve l’information sur le gène? Faire la même chose dans Swiss. Prot Indice le nom du gène est un mot-clef Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes simples Utilisation de la « wild card » : @ Si on cherche tous les mots clefs commençant par « toto » , recher toto@. Exercice 5 : Interroger Swiss. Prot Récupérer les séquences associées aux mots clefs commençant par BTG Remarque La « wild card » @ peut s’utiliser aussi pour les espèces et les nom de séquences Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requête séquences mères & séquences filles Une des grandes forces d’ACNUC est la définition et l’utilisation de séquences mères et de séquences filles. 5’ 1 1 2 3 2 3 3’ 3 CDS 5’ncr 3’ncr ID ESCOL 3_3; SV 2; circular; genomic DNA; GRV; PRO; 5498450 BP. XX AC BA 000007_GR; XX blah XX CC This Genome Reviews entry was created from entry BA 000007. 2 in the CC EMBL/Genbank/DDBJ databases on 03 March 2009. XX FH Key Location/Qualifiers FH FT source 1. . 5498450 FT /organism="GR Escherichia coli" FT /strain="Sakai = O 157: H 7 = RIMD 0509952 = EHEC" FT /mol_type="genomic DNA" FT /chromosome="Chromosome" FT /db_xref="taxon: 386585" FT. 5 F 1 5'ncr 1. . 189 FT /cds_name="ESCOL 3_3. PE 1 " FT. PE 1 CDS 190. . 273 FT /codon_start=1 FT /gene_name="thr. L" FT /locus_tag="ECs 0001" FT /protein_id="BAB 33424. 1" FT /transl_table=11 FT /translation="MKRISTTITTTITITITTGNGAG" FT. 3 F 1 3'ncr 274. . 353 FT /cds_name="ESCOL 3_3. PE 1 " FT misc_structure 215. . 328 FT /gene_name="Thr_leader" FT /db_xref="Rfam: RF 00506" FT. 5 F 2 5'ncr 274. . 353 FT /cds_name="ESCOL 3_3. PE 2 " FT. PE 2 CDS 354. . 2816 FT /codon_start=1 FT /gene_name="thr. A" FT /locus_tag="ECs 0002" FT /product="Aspartokinase I, homoserine dehydrogenase I " FT /function="NADP or NADPH binding" FT /function="amino acid binding" FT biosynthetic process" FT /protein_id="BAB 33425. 1" FT /db_xref="GO: 0004072" FT /db_xref="Uni. Prot. KB/Tr. EMBL: Q 8 XA 84" FT /transl_table=11 etc Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requête séquences mères & séquences filles ACNUC définit des séquences mères et des séquences filles. Une séquence mère contient plusieurs séquences filles Typiquement, un chromosome et ses CDS sont respectivement une séquence mère qui contient plusieurs séquences filles Une séquence fille peut être de plusieurs types Exercice 6 : Interroger HOGENOMDNA (génomes complets) Récupérer les séquences de Escherichia coli o 157: h 7 str. sakai Question: quelles sont ces séquences ? Récupérer les séquences filles du chromosome ESCOL 3_3 Question: quelles sont ces types séquences ? Récupérer les CDS du chromosome ESCOL 3_3 Revenir à la séquence mère ESCOL 3_3: repérer les CDS dans les annotations Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requête séquences mères & séquences filles Lorsque l’on recherche les séquences d’une espèce, on récupère des séquences mère uniquement (par défaut). Toutes séquences filles seront associées à la même espèce. C’est différent pour les mot clefs. Un mot clef peut être associé à la séquence mère, ou simplement à une des séquences filles. Exercice 7 : Interroger Swiss. Prot Récupérer les séquences associées au gène BTG 1 Faire la même chose dans Gen. Bank Quelle sont ces séquences? Indice le nom du gène est un mot-clef Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes complexes Combinaison de critères: • Opérations « et » AND, « ou » OR, « non » NOT, « et pas » AND NOT • Utilisation de parenthèses On peut aussi croiser des listes de résultats: • On utilise le nom des listes: list 1, list 2, list 3 etc. Exercice 8 : Interroger Swiss. Prot Récupérer les séquences de mammifères Indice Récupérer les séquences associées aux mot clef BTG 1 attention à OR et AND Croiser ces deux listes : list 1 AND list 2 Récupérer les séquences de mammifères associées au mot clefs BTG 1 en une seule requête Récupérer les séquences de mammifères associées aux mot clefs BTG 1, BTG 2, BTG 3 et BTG 4 en une seule requête. Combien de séquences obtenues? Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes complexes Autres critères: année de la publi associée à la séquence ex: y<1986 auteur de la publi associée à la séquence ( pas d’initiale) au=marley idem journal molécule m=m. RNA organelle o=MITOCHONDRION type t=CDS hôte h=homo sapiens statut (pas pour Gen. Bank) st=EST Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes complexes Il est possible de modifier une liste de séquences en fonction de la date d’entrée ou de la longueur des séquences. Exercice 10: : Interroger Swiss. Prot Récupérer les séquences de souris (mus) Sélectionner les séquences de plus de 300 aa Sélectionner les séquences qui sont entrées depuis l’an 2000 Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes complexes Il est possible de récupérer les espèces ou les mot clefs associés à un ensemble de séquences associés Exercice 11: Interroger Swiss. Prot Quelles sont les espèces chez lesquelles le gène BTG 1 est décrit dans les annotations ? (ce qui n’implique pas que les autres especes de présentent pas ce gène) Solution : récuperer les séquences associées au gène, puis les espèces associées a ces séquences) Exercice 11 bis Faire la même chose en une seule ligne de commande Indice projecting species ps Exercice 12 Récupérer le nom de toute les souches de E. coli présentes dans EMBL et les sauver dans un fichier Exercice 12 bis Récupérer la liste des eukaryotes présents dans HOGENOMDNA. Récupérer la liste des champignons. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requête naviguer dans la taxonomie et les mots clefs La taxonomie comme les mots clefs ont une structure hiérarchique. Il est possible de naviguer avec le bouton browse de Query_win Un mot clef peut posséder un « parent » . Par exemple les EC-numbers sont des mot-clefs, tous descendants du mot clef EC_Number Ceci est utile pour faire le tri dans les mots clefs. Un mot clef ancêtre est sélectionné dans Query_Win en cochant le bouton « by name » , puis en entrant le mot désiré et en cliquant sur « exec » puis « done » Vocabulaire descending keywords: (avec le programe en ligne de commande query un mot clef « ancêtre» kd list est sélectionné avec la commande nk=ancetre. Un taxon « ancêtre » descending species: est sélectionné avec la commande ns=ancetre) sd list nk=, ns= Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requête naviguer dans la taxonomie et les mots clefs Exercice 13 : Dans SWISSPROT Récupérer tous les mots clefs associés à l’homme Que constate-t-on ? Il y en a trop. On voudrait récupérer uniquement les EC numbers Récupérer tous les mots clefs descendant de « EC_NUMBERS » Combien y en a t il ? Exercice 13 bis: Récupérer tous les mots clefs descendant de « EC_NUMBERS » associés à l’homme. Combien y en a t il ? Les sauver dans un fichier. Vocabulaire pk list kd list (nk=) Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requêtes complexes Utilisation de fichiers Vous pouvez utiliser des fichier contenant: des listes de nom de séquences Vocabulaire fk file un lmist ps list des listes de numéros d’accession des listes de mot clef des listes d’espèces Exercice 14 : Dans Uniprot récupérer les EC numbers associés a l’homme à partir du fichier crée dans l’exercice 13 bis. Quelles sont les séquences de souris associées à ces mots clefs. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Le langage de requête scan des annotations Il est possible de parser les annotations à la recherche d’un mot ou d’une phrase. On peut choisir quel champs de l’annotation doit être parsé. Il est intéressant d’utiliser le scan seulement si le mot recherché n’a pas été structuré sous la forme d’un mot clefs, espèce, ou autre. En outre la liste ne doit pas être trop longue. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Extraction des données différents formats Exercice 15 : Dans HOGENOMDNA Sélectionner les séquences de la levure (saccharomyces) Extraire les séquences des chromosomes (séquences mère) au format FASTA Extraire les séquences des CDS traduits en protéine au format FASTA Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Extraction des données extraire des zones particulières dans les séquences Exercice 16 : Dans HOGENOMDNA Sélectionner les séquences de la levure (saccharomyces) Extraire les séquences des CDS au format FASTA Extraire les séquences des CDS au format EMBL Extraire les parties 5’non codante au format FASTA Extraire les 1000 premiers résidus de chaque chromosome au format FASTA Extraire les 500 résidus qui précédent le CDS au format FASTA Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query est la version en ligne de commande de query_win L’intérêt de query et l’utilisation de scripts. Ceci facilite l’automatisation du traitement, particulièrement utile dans les cas suivants: - longue suite de requête fastidieuse à ré-écrire à chaque fois, moins d’erreur, gain de temps - utilisation de workflows - un script générique pour différente utilisation - utilisation sur les clusters, utilisation sur des fermes de calcul. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query lancement Comme pour query_win il existe une version locale ( installée elle aussi sur les machines pbil, pbil-dev, et les workers pbil-deb. X) et une version client (pour interroger les banques à distance) disponible pour les plateformes Linux/Unix, Mac. OS, Windows. Version locale: interroger embl >query embl Version client: interroger embl >raa_query puis choisir la banque, ou directement >raa_query pbil. univ-lyon 1. fr: 5558/embl Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query instructions query utilise le même langage de requête query_win. Cependant il existe d’autres instructions, en particulier pour la gestion des listes. N’hésitez pas à consulter l’aide en ligne en tapant HELP. Exercice 17 Interroger HOGENOMDNA (génomes complets) Récupérer les séquences de Escherichia coli o 157: h 7 str. sakai Récupérer les séquences filles du chromosome ESCOL 3_3 Récupérer les CDS du chromosome ESCOL 3_3 Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query instructions Solution exercice 17 Interroger HOGENOMDNA (génomes complets) Récupérer les séquences de Escherichia coli o 157: h 7 str. sakai Récupérer les séquences filles du chromosome ESCOL 3_3 Récupérer les CDS du chromosome ESCOL 3_3 Sauver les CDS query hogenomdna sel sélectionne une liste ( par défaut list 1) sp=Escherichia coli O 157: h 7 str. sakai modifie une list 1 5 critere de sélection liste à modifer type de modification sel sélectionne une nouvelle liste ( par défaut list 3, car la liste 2 a dejas ete generée. Ou ? ) n=ESCOL 3_3 et t=cds save list 3 list_cds stop critere de sélection sauve la liste à sauver fichier sortie de query Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query instructions Exemple précédent Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query utilisation de scripts Une fois que l’on a défini la suite d’instruction à exécuter dans query, il est plus efficace d’utiliser un script si on désire recommencer le traitement, le modifier ou le rendre générique Un script se présente sous cette forme query banque << EOF instructions EOF Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query utilisation de scripts Exécuter l’exemple précédent sous la forme d’un script. En plus on extrait les CDS au format FASTA source exemple_script_1. csh ou csh exemple_script_1. csh Exercice 18 terminal no sélectionne un mode qui ne nécessite pas d’intervention manuelle lors de l’affichage d’un grand nombre de séquences Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query utilisation de scripts source exemple_script_2. csh ou csh exemple_script_2. csh sel/l=plant donner un nom à la liste facilite l’écriture et la compréhension du script Exercice 19 Ce script sélectionne les familles de gènes homologues (familles HOGENOM) communes aux plantes et aux cyanobactéries mais que l’on ne retrouve pas chez les animaux. Les CDS d’Arabidopsis de ces familles sont sauvés et extraits au format FASTA Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de query utilisation de scripts Utilisation d’un script générique qui prend des arguments en entrée csh exemple_script_3_bis. csh viridiplantae cyanobacteria metazoa Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de seqin. R Il est possible d’interroger les banques ACNUC à partir du logiciel R. Pour cela, utiliser le package seqin. R Exercice 17 ter A travers R: Interroger HOGENOMDNA (génomes complets) Récupérer les CDS de Escherichia coli o 157: h 7 str. sakai Tracer l’histograme des longeurs des CDS Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation de seqin. R Solution Exercice 17 install. pacakges( « seqinr » ) library( « seqinr » ) choosebank( « hogenomdna » ) query("cds", "sp=Escherichia coli o 157: h 7 str. sakai et t=cds") lengths<-lapply( cds$req, get. Length) hist(unlist(lengths)) Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences 1. Pourquoi créer sa propre banque ACNUC ? 2. Construire une banque de séquences à partir d’un jeu de séquences annotées • Construire une base ACNUC au format Swiss. Prot • Construire une base ACNUC au format EMBL 3. Spécifier des mots clefs spécifiques 4. Enrichir les annotations pour permettre des requêtes d’intérêt 5. Créer une banque de séquences à partir d’un jeu de séquences non annotées ( format fasta) • Génération de données au format Swiss. Prot Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Pourquoi créer sa propre banque ACNUC ? 1. Stocker et avoir accès à ses séquences d’intérêt • sélection d’un jeu de séquences dans une banque généraliste • séquençage 2. Pouvoir faire des requêtes complexes 3. Possibilité de créer ses propres mot clefs 4. Automatisation des requêtes 5. Partage et diffusion hiérarchisés� Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Pourquoi créer sa propre banque ACNUC ? Comment choisir d’interroger une banque acnuc locale: les index sont dans le répertoire /ma_banque/index les fichiers plats sont dans le répertoire /ma_banque/flat_files Définir les variables d’environnement acnuc et gcgacnuc setenv mabase « /ma_banque/index /ma_banque/flat_files » query mabase Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Construire une banque de séquences à partir d’un jeu de séquences annotées Exercice 20 construire une banque au format Swiss. Prot script build_uniprot. csh initf : crée les index acnucgener: indexe les séquences Documentation: http: //pbil. univ-lyon 1. fr/databases/acnuc_gestion. html Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Construire une banque de séquences à partir d’un jeu de séquences annotées Exercice 21 construire une banque au format EMBL script build_embl. csh initf : crée les index acnucgener: indexe les séquences Documentation: http: //pbil. univ-lyon 1. fr/databases/acnuc_gestion. html Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Construire une banque de séquences à partir d’un jeu de séquences annotées On peut indexer plusieurs fichiers plats en lançant acnucgener sur chacun d’eux. C’est même indispensable de diviser les séquence en plusieurs fichiers plats si celles ci sont très nombreuses. Par exemple EMBL = 305 divisions Il est possible de supprimer des séquences, de supprimer des motclefs, taxons, etc. obsolètes. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Définir des nouveaux mots clefs (banque nucléiques seulement) Par défaut, un grand nombre de champs sont utilisés pour définir les mot clefs. Cependant il est possible de spécifier les champs supplémentaire qui doivent être utilisés pour définir les mots clefs Exemple recherche le mot clefs HBG 298754 dans la banque embl crée précedement. Ce mot clef n’existe pas. Pourtant le champs (cf séquence ECODH_1. PE 2) /gene_family="HBG 298754" est présent Exercice 22 Regénerez la banque avec le script build_embl_customized. csh. . . Recommencer la requête. Que constatez vous? Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Définir des nouveaux mots clefs (banque nucléiques seulement) La prise en compte de certains champs « FT » comme mot clefs a été réalisé grâce au fichier « custom_policy » placé dans le répertoire $acnuc (index) fichier custom_policy Qualifier = GENE_FAMILY Use_Value = True Parent_Keyword = GENE_FAMILY Qualifier = DB_XREF Use_Value = True Parent_Keyword = CROSS REFERENCES Qualifier = PROTEIN_ID Use_Value = True Parent_Keyword = PROTEIN IDS Qualifier = %(C+G) Use_Value = True Parent_Keyword = CG_CONTENTS Qualifier = LOCUS_TAG Use_Value = True Parent_Keyword = LOCUS_TAG ECODH_1. PE 2 Location/ Qualifiers (length=2463 bp) FT CDS 337. . 2799 FT /codon_ start=1 FT /gene_family="HBG 298754" FT /evidence="4: Predicted" FT /gene_id="IGI 03726849" FT /gene_name="thr. A" FT /locus_tag="ECDH 10 B_0002" FT /product="Fused aspartokinase I and homoserine FT dehydrogenase I" FT /function="NADP or NADPH binding" FT /function="amino acid binding" FT /function="homoserine dehydrogenase activity " FT /biological_process="aspartate family amino acid FT biosynthetic process " FT /protein_id="ACB 01207. 1" FT /db_xref="GO: 0004072" FT /db_xref="Inter. Pro: IPR 001048" FT /db_xref="Uni. Prot. KB/Tr. EMBL: B 1 XBC 7" FT /transl_table=11 FT /%(C+G)="CG<60%" FT /note="C+G content in third codon positions = 57. 6 % " // Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Enrichir les annotations et créer des mots clefs Vous pouvez ainsi enrichir vos annotations avec des mot-clefs adaptés a vos requêtes. Dans l’exemple précédent les 3 lignes de features (FT) FT /gene_family="HBG 298754" FT /%(C+G)="CG<60%" FT /note="C+G content in third codon positions = 57. 6 % " On été rajoutées aux annotations afin de pouvoir faire des requêtes sur les familles de gène et sur les taux de GC. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences clefs Enrichir les annotations et créer des mots Exercice 23 Modifier le fichier custom_policy pour générer différents mot clefs deux exemples custom_qualifier_policy. hogenom custom_qualifier_policy. tp Pour aller plus loin: Modifier les annotations et créer un fichier custom_qualifier_policy associé. Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Créer une banque de séquences à partir d’un jeu de séquences non annotées ( format fasta) Une banque ACNUC est générée à partir d’un fichier de de type Swiss. Prot, EMBL ou Genbank. Il est nécessaire de transformer un fichier FASTA au format désiré avant de construire la base. Pour Uniprot: script Bio. Perl (pas terrible) gener_prot. pl Chlre 4_best_proteins_small. fasta Chlre 4_best_proteins. dat CHLRE Pour EMBL/Gen. Bank : readseq http: //www. ebi. ac. uk/cgi-bin/readseq. cgi Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Créer une banque de séquences à partir d’un jeu de séquences non annotées ( format fasta) Exercice 24 Transfomer le fichier ecoli_dna. fasta au format EMBL et construire une banque ACNUC Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Création d'une banque ACNUC afin de gérer ses échantillons de séquences Afin d'effectuer des requêtes permettant de: Retrouvez toutes les séquences de l'envoi au séquencage du 15/02/2010 Retrouvez toutes les séquences de l'envoi du 15/02/2010 et correspondant à la manip « toto » . Retrouvez toutes les séquences de la manip « toto » dont l'annotation correspond à l'espèce « tata » . Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Construire sa propre banque de séquences Les étapes Etape 1: Nettoyage et annotation des séquences Etape 2: Transformer le fichier de séquences annotées du format FASTA au format EMBL (readseq). Etape 3: Ajouter des mots clefs aux fichiers d' annotation: Date d'obtention Nom de la manip Annotation Etape 4: Construction de la banque Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation des API 1. Les « Application Programming Interface » (API) 2. L’API C/C++ • utiliser le langage de requete (plus facile), ou • jouer avec les pointeurs 3. Retour sur l’API seqin. R 4. l’API Python Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation des API Les API C/C++ Documentation : Structure générale http: //pbil. univ-lyon 1. fr/databases/acnuc/cfonctions. html API C pour la version locale http: //pbil. univ-lyon 1. fr/databases/acnuc/structure. html API C pour la version client (accès via les sockets) http: //pbil. univ-lyon 1. fr/databases/acnuc/raa_acnuc. html API C++ pour la version client (Bio++ , accès via les sockets) http: //pbil. univ-lyon 1. fr/databases/acnuc/bpp-raa. html Un exemple de code API version locale : http: //pbil. univ-lyon 1. fr/databases/acnuc/example. php et plusieurs exemple dans http: //pbil. univ-lyon 1. fr/databases/acnuc/cfonctions. html Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation des API L’API C version locale Utiliser les pointeurs Exercice 25 tester le programe d’interogation locale exemple 1. c comprendre le code en s’inspirant de la documentation. choisir une banque acnuc locale: « choix embl » ou « choixbanque » sinon setenv acnuc/acnucdb/embl/index /* gcc -c exemple 1. c -I /bge/banques/csrc gcc -o exemple 1. o -L /bge/banques/csrc -lcacnucdeb */ #include "dir_acnuc. h" main(int argc, char *argv[]) { /*char my_taxon[] = "Bovidae"; /* case ignored */ char my_taxon[500]; int num, err, *list, numsp; int i = 2; if (argc == 1) { fprintf(stderr, "Usage: exemple 1 taxon_namen"); exit(1); } strcpy(my_taxon, argv[1]); while (argc > i) { strcat(my_taxon, " "); strcat(my_taxon, argv[i]); i ++; } acnucopen(); list = (int *)calloc(lenw , sizeof(int) ); err = shkseq(my_taxon, list, 1); if(err == 2) { printf("Taxon %s does not exist in the current database. n", my_taxon); exit(1); } num = 1; while( (num = irbit(list, num, nseq)) != 0) { /* here num is the rank of a seq attached to taxon my_taxon */ readsub(num); printf("%st%sn", my_taxon, psub->name); } free(list); setenv gcgacnuc /acnucdb/embl/flat_files } Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation des API L’API C version locale Utiliser une requête Exercice 26 tester l’exemple donné ici http: //pbil. univ-lyon 1. fr/databases/acnuc/ex_requete. php Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation des API L’API C version client API C pour la version client (accès via les sockets) http: //pbil. univ-lyon 1. fr/databases/acnuc/raa_acnuc. html Exercice 27 tester l’exemple donné ici http: //pbil. univ-lyon 1. fr/databases/acnuc/raa_acnuc. html#example Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Utilisation des API L’API Python Documentation : http: //pbil. univ-lyon 1. fr/cgi-bin/raapythonhelp. csh Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
Pour aller plus loin Installer son serveur ACNUC Questions? et n’oubliez pas: www. mangerbouger. fr Formation ACNUC - 3 Mars 2010 - Pôle Informatique du LBBE - CNRS - Université de Lyon
- Slides: 65