silico.biotoul.fr
 

Atelier Phylogénomique

From silico.biotoul.fr

(Difference between revisions)
Jump to: navigation, search
m (Step 9: orthomclLoadBlast)
m (Step 10: orthomclPairs)
Line 435: Line 435:
<pre style="color:blue;white-space: pre-wrap;white-space: -moz-pre-wrap;white-space: -pre-wrap;white-space: -o-pre-wrap">
<pre style="color:blue;white-space: pre-wrap;white-space: -moz-pre-wrap;white-space: -pre-wrap;white-space: -o-pre-wrap">
-
/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclPairs /home/yquentin/work/wolbachia/my_orthomcl_dir/orthomcl.config /home/yquentin/work/wolbachia/my_orthomcl_dir/orthomcl_pairs.log cleanup=no
+
/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclPairs wolbachia/my_orthomcl_dir/orthomcl.config wolbachia/my_orthomcl_dir/orthomcl_pairs.log cleanup=no
</pre>
</pre>

Revision as of 15:42, 12 October 2017

Contents

Wolbachia

Les Wolbachia infectent les arthropodes (environ 60% des espèces) et certaines espèces de nématodes. Cette large répartition en fait donc un des symbiotes les plus répandus du monde animal. Ces bactéries au mode de vie intracellulaire sont localisées au sein du cytoplasme des cellules de leurs hôtes. Elles se retrouvent en proportion importante dans l'appareil reproducteur (principalement les cellules germinales) et l’épithélium du système génital des arthropodes et nématodes.

La transmission des Wolbachia est essentiellement verticale : elles sont transmises de mère à descendants via le cytoplasme des ovocytes. Le spermatozoïde ne transmettant que son noyau lors de la fécondation, les mâles sont incapables de transmettre les bactéries à leur descendance. C'est pour cette raison que les Wolbachia ont pour particularité de manipuler la reproduction de leurs hôtes : la fitness des femelles infectées est augmentée par différents effets, ce qui maximise la probabilité de transmission de Wolbachia.

Wolbachia pourrait également, dans certaines conditions, se transmettre de manière horizontale, d’une espèce à une autre. Par exemple, des drosophiles infectées par Wolbachia pourraient transmettre le parasite aux larves de la guêpe parasitoïde Nasonia vitripennis. Celle-ci dépose ses œufs dans une pupe de mouche, et la larve se contaminerait à l’intérieur de la mouche. Chez les crustacés isopodes terrestres, des études ont montré que les transferts horizontaux de Wolbachia peuvent s'effectuer par contacts infectieux. Via une blessure, l'hémolymphe d'un individu infecté peut être vecteur de Wolbachia et entraîner la contamination d'un individu auparavant sain3.

Références

  • Comandatore et al., 2013 Phylogenomics and analysis of shared genes suggest a single transition to mutualism in Wolbachia of nematodes.
  • Gerth et al., 2014 Phylogenomic analyses uncover origin and spread of the Wolbachia pandemic.
  • Comandatore et al., 2015 Supergroup C Wolbachia, mutualist symbionts of filarial nematodes, have a distinct genome structure.

Disponibilité des génomes

NCBI

Wolbachia

Génomes de Wolbachia disponibles au NCBI browse

Lien sur les génomes de Wolbachia du NCBI:

  • Répertoire avec les souches du NCBI.

Tables avec des information sur les projets de séquençages:

Nous avons édité le fichier pour associer un identifiant de moins de 5 lettres pour chaque génomes (compatibilité avec certains logiciels utilisés).

Autres souches

Les génomes des souches suivantes sont absentes du NCBI.

Autres souches téléchargées.

Groupes externes

Les souches suivantes peuvent être utilisées pour enraciner un arbre réalisé sur les souches de Wolbachia:

  • Ace Anaplasma centrale str. Israel — 1 1 206 806 NC_013532
  • Aph Anaplasma phagocytophilum HZ — 1 1 471 282 NC_007797
  • Ech Ehrlichia chaffeensis str. Arkansas — 1 1 176 248 NC_007799
  • Eru Ehrlichia ruminantium str. Gardel — 1 1 499 920 NC_006831
  • Nri Neorickettsia risticii str. Illinois — 1 879 977 NC_013009
  • Nse Neorickettsia sennetsu str. Miyayama — 1 859 006 NC_007798
  • Ccr Caulobacter crescentus CB15 — 1 4 016 947 NC_002696

Outgroup_strains

Autres ressources

PATRIC

PATRIC est une ressource importante pour les bactéries patogènes: " The Pathosystems Resource Integration Center (PATRIC): the bacterial Bioinformatics Resource Center (Wattam et al., 2017)".

Joint Genome Institute

JGI is a DOE Office of Science User Facility managed by Lawrence Berkeley National Laboratory© 1997-2017 The Regents of the University of California.

EnsemblBacteria

Ensembl Bacteria is a browser for bacterial and archaeal genomes.

Search for a genome: wolbachia
20 entries
Downloads, Filter wolbachia
16 entries

Annotations des génomes

Nous allons annoter tous les génomes avec la même stratégie pour avoir une annotation homogène.

PROKKA

"Prokka is a software tool for the rapid annotation of prokaryotic genomes": prokka home.

Citation: Seemann T. Prokka: rapid prokaryotic genome annotation. Bioinformatics. 2014 Jul 15;30(14):2068-9. PMID:24642063

Nous allons utiliser la version prokka 1.10 (current) qui est disponible sur le serveur.

Exemples d'utilisations

Dirofilaria_immitis_wolbachia

--outdir    répertoire avec les fichiers résultats.
--compliant forcer la compatibilité avec GenBank/EMBL

Créer un répertoire :

mkdir /home/<user_name>/work/wolbachia
cd /home/<user_name>/work/wolbachia

/usr/local/bioinfo/src/PROKKA/current/bin/prokka --force --outdir prokka/wDim --addgenes --prefix wDim --locustag wDim --species 'Wolbachia endosymbiont' --strain wDim --compliant /home/formation/public_html/M2_Phylogenomique/data/Wolbachia/Additional/Dirofilaria_immitis_wolbachia_2.2.fna

Output Files

.gff 	This is the master annotation in GFF3 format, containing both sequences and annotations. It can be viewed directly in Artemis or IGV.
.gbk 	This is a standard Genbank file derived from the master .gff. If the input to prokka was a multi-FASTA, then this will be a multi-Genbank, with one record for each sequence.
.fna 	Nucleotide FASTA file of the input contig sequences.
.faa 	Protein FASTA file of the translated CDS sequences.
.ffn 	Nucleotide FASTA file of all the prediction transcripts (CDS, rRNA, tRNA, tmRNA, misc_RNA)
.sqn 	An ASN1 format "Sequin" file for submission to Genbank. It needs to be edited to set the correct taxonomy, authors, related publication etc.
.fsa 	Nucleotide FASTA file of the input contig sequences, used by "tbl2asn" to create the .sqn file. It is mostly the same as the .fna file, but with extra Sequin tags in the sequence description lines.
.tbl 	Feature Table file, used by "tbl2asn" to create the .sqn file.
.err 	Unacceptable annotations - the NCBI discrepancy report.
.log 	Contains all the output that Prokka produced during its run. This is a record of what settings you used, even if the --quiet option was enabled.
.txt 	Statistics relating to the annotated features found.
.tsv 	Tab-separated file of all features: locus_tag,ftype,gene,EC_number,product
more wolbachia/prokka/wDimm/wDimm.txt
organism: Genus wolbachia endosymbiont wDimm 
contigs: 2
bases: 921012
rRNA: 3
gene: 793
CDS: 755
tRNA: 34
tmRNA: 1

Litomosoides_sigmodontis_wolbachia

/usr/local/bioinfo/src/PROKKA/current/bin/prokka --force --outdir prokka/wLsi --addgenes --prefix wLsi --locustag wLsi --species 'Wolbachia endosymbiont' --strain wLsi --compliant /home/formation/public_html/M2_Phylogenomique/data/Wolbachia/Additional/Litomosoides_sigmodontis_wolbachia_2.0.fna
more wolbachia/prokka/wLsi/wLsi.txt
organism: Genus wolbachia endosymbiont wLsi contigs: 10
bases: 1048936
rRNA: 3
gene: 918
CDS: 880
tRNA: 34
tmRNA: 1

Visualisation des annotations

Nous pouvons utiliser le logiciel art (Artemis) pour visualiser les annotations des génomes:

/usr/local/bioinfo/src/Artemis/current/art wolbachia/prokka/Cameroon/wCam.gff

Compatibilité avec MAUVE

Il peut y avoir un problème lors du chargement des fichiers gbk dans MAUVE. Une solution à été proposée:

"Mauve uses BioJava to parse GenBank files, and it is very picky about Genbank files. It does not like long contig names, like those from Velvet or Spades. One solution is to use --centre XXX in Prokka and it will rename all your contigs to be NCBI (and Mauve) compliant. It does not like the ACCESSION and VERSION strings that Prokka produces via the "tbl2asn" tool. The following Unix command will fix them:"

egrep -v '^(ACCESSION|VERSION)' prokka.gbk > mauve.gbk

Annotation des souches

Nous allons retenir les souches dont le génome est 'Complete Genome' ou 'Scaffold'.

Un script perl va automatiser la procédure:

/home/formation/public_html/M2_Phylogenomique/scripts/rename_ncbi_files.pl --verbose 0

Les fichiers fasta sont dans /home/<user_name>/work/wolbachia/prokka/

Le script suivant permet de lancer prokka sur un ensemble de génomes en utilisant qsub.

/home/formation/public_html/M2_Phylogenomique/scripts/prokka_loop.pl --directory /home/formation/public_html/M2_Phylogenomique/data/Wolbachia/NCBI --prokka_dir wolbachia/prokka --genome_list "wMel wMun" --verbose 0 --erase 0

MLST

Nous allons utiliser la base de données MLST : Wolbachia PubMLST database (wolbachia) pour extraire les gènes MLST utilisés pour classer les souches de Wolbachia.

MLST genes

HMM profiles

Pour annoter les gènes MLST dans nos génomes, nous allons utiliser hmmer. La première est de construire des fichiers profiles pour les 5 gènes.

/home/formation/public_html/M2_Phylogenomique/scripts/fasta2hmm.pl --mlst_dir wolbachia/MLST --gene_list "gatB coxA hcpA ftsZ fbpA" --verbose 0 --erase 0

Identification des gènes dans les génomes

Nous allons extraire les gènes MLST et les concaténer pour chaque génome.

Annotation de chaque profile HMM

/usr/local/bioinfo/bin/nhmmer -E 1e-50 -o gatB_Cameroon.out -A wolbachia/MLST/gatB_wAu.stk --noali wolbachia/MLST/gatB.hmm wolbachia/prokka/wAu/wAu.fna;

Le fichier avec les alignements est en format STK, nous devons le transformer en format FASTA

STK à FASTA

/usr/local/bioinfo/bin/esl-reformat --informat stockholm -o wolbachia/MLST/gatB_wAu.fa fasta wolbachia/MLST/gatB_wAu.stk;

Automatisation

Les deux étapes sont automatisées pour tous les gènes et tous les génomes.

/home/formation/public_html/M2_Phylogenomique/scripts/hmm2genes.pl --prokka_dir wolbachia/prokka --mlst_dir wolbachia/MLST --gene_list "gatB coxA hcpA ftsZ fbpA" --verbose 0 --erase 0

Les gènes concaténés sont dans le fichier :

wolbachia/MLST/concat_file.fa

Alignement et arbre

muscle:

/usr/local/bioinfo/bin/muscle -in wolbachia/MLST/concat_file.fa -out wolbachia/MLST/concat_file.mfa

readal (fasta à phylip):

/usr/local/bioinfo/bin/readal -in wolbachia/MLST/concat_file.mfa -out wolbachia/MLST/concat_file.phy -phylip;

PhyML:

/usr/local/bioinfo/src/PhyML/PhyML-3.1/PhyML-3.1_linux64 -i wolbachia/MLST/concat_file.phy -d nt -b -4 -m HKY85 -f m -t e -v e -c 4 -a e -s NNI -o tlr --quiet --no_memory_check

Visualisation de l'arbre

seaview wolbachia/MLST/concat_file.phy_phyml_tree.txt&

Groupes de gènes orthologues

OrthoMCL

Le guide utilisateurs sur le serveur: /usr/local/bioinfo/src/OrthoMCL/current/doc/OrthoMCLEngine/Main/UserGuide.txt

For alternate documentation online, please read Unit 6.12 of the Current Protocols of Bioinformatics available at:

 OrthoMCL Protocols
  

For details on the orthomcl algorithm, please read the OrthoMCL Algorithm Document:

 OrthoMCL Algorithm Document

En entrée, le programme prend un ensemble de protéomes.

La sortie de orthoMCL est un ensemble de fichiers :

  pairs/
     potentialOrthologs.txt
     potentialCoorthologs.txt
     potentialInparalogs.txt
  groups.txt

Les fichiers dans le répertoire pairs contiennent les paires de relations entre les protéines associées aux scores. Comme décrit dans l'article, on distingue :

  • les orthologues potentiels
  • les co-orthologues
  • les inparalogues

Il y a trois grandes étapes:

  • blastp tous_contre_tous
  • l'identification des paires (répertoire pairs)
  • le partitionnement du graphe des pairs avec le programme MCL program (groups.txt).

Les différentes étapes du l'analyse sont lancées indépendamment mais elles s'enchainent dans un ordre bien précis. Il est possible de modifier une étape pour tester des alternatives ou optimiser l'exécution. Toutefois, il est impératif de respecter les formats des fichiers.


à modifier!

orthoMCL pipe 1

Pour faciliter les premières étapes, elles ont été intégrées dans le script prep_orthoMLC.pl.

Step 5: orthomclAdjustFasta

Input:

 - fasta files as acquired from the genome resource.

Output:

 - the my_orthomcl_dir/compliantFasta/ directory of orthomcl-compliant fasta files (see Step 6)

Use orthomclAdjustFasta to produce a compliant file from any input file that conforms to the following pattern (for other files, provide your own script to produce complaint fasta files):

 - has one or more fields that are separated by white space or the '|' character (optionally surrounded by white space)
 - has the unique ID in the same field of every protein.


Create an empty my_orthomcl_dir/compliantFasta/ directory, and change to that directory.

Run orthomclAdjustFasta once for each input proteome fasta file. It will produce a compliant file in the new directory. Check each file to ensure that the proteins all have proper IDs.

Step 6: orthomclFilterFasta

Input:

 - my_orthomcl_dir/compliantFasta/ 
 - optionally a gene->protein mapping file

Output:

 - my_orthomcl_dir/goodProteins.fasta
 - my_orthomcl_dir/poorProteins.fasta
 - report of suspicious proteomes (> 10% poor proteins)

This step produces a single goodProteins.fasta file to run BLAST on. It filters away poor-quality sequences (placing them in poorProteins.fasta). The filter is based on length and percent stop codons. You can adjust these values.

The input requirements are:

 # a compliantFasta/ directory which contains all and only the proteome .fasta files, one file per proteome.
 # each .fasta file must have a name in the form 'xxxx.fasta' where xxxx is a three or four letter unique taxon code.  For example: hsa.fasta or eco.fasta
 # each protein in those files must have a definition line in the following format:
    >xxxx|yyyyyyyy

where xxxx is the three or four letter taxon code and yyyyyyy is a sequence identifier unique within that taxon.

Change dir to my_orthomcl_dir/ and run orthomclFilterFasta.

orthoMCL pipe 2

The perl script ava_BLAST_orthoMCL.pl execute Step 7.

It use qsub to submit the all-v-all blastp to the cluster.

At the end of runs:

cat ../blastp/*fasta > ../blastp/wol_21_blt

Step 7: All-v-all BLAST

Input:

 - goodProteins.fasta

Output:

 - your_blast_results_in_tab_format

You must run your own BLAST.

We expect you to:

 - use NCBI BLAST
 - run with the -m 8 option to provide tab delimited output required by Step 8
 - for IMPORTANT DETAILS about other BLAST arguments, see:
   the OrthoMCL Algorithm Document

Blastp parameters:

-F  'm S': mask with Seg
-v 100000:  a "don't care" value
-b 100000:  a "don't care" value
-z protein_database_size:   the number of proteins in the set.  S
-e 1e-5:  recommended e-value cutoff

Step 8: orthomclBlastParser

Input:

 - your_blast_results_in_tab_format
 - my_orthomcl_dir/compliantFasta/

Output:

 - my_orthomcl_dir/similarSequences.txt

This step parses NCBI BLAST -m 8 output into the format that can be loaded into the orthomcl database.

Use the orthomclBlastParser program for this. In addition to formatting, it computes the percent match of each hit.

/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclBlastParser wolbachia//blastp/wol_21_blt wolbachia/my_orthomcl_dir/compliantFasta >> similarSequences.txt

orthoMCL mySQL DB

création (Marie-Stephane Trotard)

Copier le fichier modèle

/usr/local/bioinfo/src/OrthoMCL/orthomclSoftware-v2.0.9/my_orthomcl_dir_template/orthomcl.config

sous votre work par exemple et personnaliser le ainsi

Pour créer le schema de la base:

/usr/local/bioinfo/src/OrthoMCL/orthomclSoftware-v2.0.9/bin/orthomclInstallSchema
<path_vers_votre_orthomcl.config <path_verts_votre repertoire de
travail>/install_schema.log
/usr/local/bioinfo/src/OrthoMCL/orthomclSoftware-v2.0.9/bin/orthomclInstallSchema wolbachia/my_orthomcl_dir/orthomcl.config wolbachia/my_orthomcl_dir/install_schema.log

DROP Tables

OrthoMCL expects a "clean" and empty database after orthoMCLInstallSchema, so in between runs it's easiest to run

mysql -h 147.99.108.14 -D orthomcl_yquentin -u ortho_yquentin -p
mysql>SHOW TABLES;
mysql>DROP TABLE IF EXISTS BestHit,  BestInterTaxonScore, BestQueryTaxonScore, BetterHit, CoOrthNotOrtholog, CoOrtholog, CoOrthologAvgScore, CoOrthologCandidate, CoOrthologTaxon, CoOrthologTemp, InParalog, InParalog2Way, InParalogAvgScore, InParalogOrtholog, InParalogTaxonAvg, InParalogTemp, InplgOrthTaxonAvg, InplgOrthoInplg, InterTaxonMatch, Ortholog, Ortholog2Way, OrthologAvgScore, OrthologTaxon, OrthologTemp, OrthologUniqueId, SimilarSequences, UniqSimSeqsQueryId;

inside the mysql command line and then to do orthoMCLinstallSchema again.

Step 9: orthomclLoadBlast

Input:

 - similarSequences.txt

Output:

 - SimilarSequences table in the database

This step loads the BLAST results into the orthomcl database.

/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclLoadBlast wolbachia/my_orthomcl_dir/orthomcl.config work/wolbachia/my_orthomcl_dir/similarSequences.txt

Step 10: orthomclPairs

Input:

 - SimilarSequences table in the database

Output:

 - PotentialOrthologs table
 - PotentialInParalogs table
 - PotentialCoOrthologs table

This is a computationally major step that finds protein pairs. It executes the algorithm described in the OrthoMCL Algorithm Document, using a relational database.

The program proceeds through a series of internal steps, each creating an intermediate database table or index. There are about 20 such tables created. Finally, it populates the output tables.

The cleanup= option allows you to control the cleaning up of the intermediary tables. T

  • 'yes' option drops the intermediary tables once they are no longer needed.
  • 'no' option keeps the intermediary tables in the database.

In total, they are expected to be about 50 percent of the SimilarSequences table. They are useful mostly for power users or developers who would like to query them. They can be removed afterwards with the 'only' or 'all' options. The latter also removes the final tables, and should only be done after Step 11 below has dumped them to files.

The startAfter= option allows you to pick up where the program left off, if it stops for any reason. Look in the log to find the last completed step, and use its tag as the value for startAfter=

Because this program will run for many hours, we recommend you run it using the UNIX 'screen' program, so that it does not abort in the middle. (If it does, use startAfter=).

/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclPairs wolbachia/my_orthomcl_dir/orthomcl.config wolbachia/my_orthomcl_dir/orthomcl_pairs.log cleanup=no

Step 11: orthomclDumpPairsFiles

Input:

 - database with populated pairs tables

Output

 - pairs/ directory.  
 - mclInput file

Run the orthomclDumpPairsFiles.

The pairs/ directory contains three files: ortholog.txt, coortholog.txt, inparalog.txt. Each of these has three columns:

  - protein A
  - protein B
  - their normalized score (See the Orthomcl Algorithm Document).
/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclDumpPairsFiles /home/yquentin/work/wolbachia/my_orthomcl_dir/orthomcl.config

Step 12: mcl

Input:

 - mclInput file

Output:

 - mclOutput file
/usr/local/bioinfo/bin/mcl /home/yquentin/work/wolbachia/my_orthomcl_dir/mclInput --abc -I 1.5 -o /home/yquentin/work/wolbachia/my_orthomcl_dir/mclOutput

Step 13: orthomclMclToGroups

Input:

 - mclOutput file

Output:

 - groups.txt

Change to my_orthomcl_dir and run:

/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclMclToGroups wolb 1000 < mclOutput > groups.txt
  • my_prefix is an arbitrary string to use as a prefix for your group IDs.
  • 1000 is an arbitrary starting point for your group IDs.

Step 14: orthomclSingletons

Input:

 - groups.txt
 - goodProteins.txt

Output:

 - singletons.txt

Change to my_orthomcl_dir and run:

/usr/local/bioinfo/src/OrthoMCL/current/bin/orthomclSingletons /home/yquentin/work/wolbachia/my_orthomcl_dir/good_proteins_file /home/yquentin/work/wolbachia/my_orthomcl_dir/groups.txt >> /home/yquentin/work/wolbachia/my_orthomcl_dir/singletons.txt
wc -l /home/yquentin/work/wolbachia/my_orthomcl_dir/singletons.txt
1639

Perl scripts

PROKKA

  • rename_ncbi_files.pl
  • prokka_loop.pl

MLST

  • fasta2hmm.pl
  • hmm2genes.pl