Quantification de transcrits avec Salmon
Introduction
Salmon (1) est une application de quantification qui ne demande pas l'alignement préalable des séquences FASTQ sur un génome de référence. À partir d'un index des séquences contenu dans un transcriptome de référence, Salmon en mode mapping procède à un alignement et crée un table de l'abondance de chaque transcrit représenté dans les fichiers FASTQ paired-end.
Note importante: Salmon ne fait pas la découverte de nouveau transcrits pas plus qu'il ne peut trouver de nouveaux exons. Il trouvera uniquement les séquences qui sont représentées dans le transcriptome de référence.
Protocole
Étapes préliminaires
- En premier, assumons que nous avons des fichiers paired-end en format FASTQ qui ont été filtrés pour en retirer les séquences de mauvaise qualité (selon vos critères).
- Deuxièmement, nous travaillons dans notre répertoire racine usager.
% cd && mkdir monAnalyse
- Finalement, nous avons des fichiers d'annotations des transcrits pour le génome étudié. Pour notre exemple, nous utiliserons les fichiers provenant du projet Gencode.
% mkdir salmonIndexes % cd salmonIndexes % curl -L -O ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_32/gencode.v32.transcripts.fa.gz % unzip gencode.v32.transcripts.fa.gz
1ère étape: construire un index des séquences d'un transcriptome de référence
- Il faut utiliser
salmon
en mode index afin de créer l'index de recherche quesalmon
utilisera pour sa recherche de transcrits. - En assumant que nous sommes toujours dans
~/salmonIndexes
et quesalmon
se trouve dans$PATH
(ce qui devrait être le cas si vous avez suivi la recette), utilisez la ligne de commande suivante:
% salmon index -t gencode.v32.transcripts.fa -i human.gencode.v32.transcripts.index
- À la fin du processus, vous trouverez dans le répertoire
salmonIndexes
un nouveau répertoire appeléhuman.gencode.v32.transcripts.index
contenant un série de fichiers quesalmon
utilisera pour sa recherche. - Il va s'en dire que cette indexation devra être refaite à chaque mise à jour du fichier de transcrits.
2ème étape: procéder à l'alignement et au calcul d'abondance
- On remonte d'un niveau et on s'en va dans notre dossier d'analyse:
% cd ../monAnalyse
- Assumons que les fichiers FASTQ sont dans une arborescence logique (pour permettre une certaine automation; projet à venir…):
% ls PATH/vers/fichiers/FASTQ sample_1_ctrl sample_1_ctrl.filtered.R1.fastq.gz sample_1_ctrl.filtered.R2.fastq.gz sample_2_ctrl etc... sample_3_ctrl etc... sample_1_treated etc... sample_2_treated etc... sample_3_treated etc...
- On calque cette structure dans notre répertorie d'analyse:
% for i in 1..3; do mkdir sample_$i_ctrl;done % for i in 1..3; do mkdir sample_$i_treated;done
- On se dirige dans le premier et on lance l'analyse quantitative
salmon
:
% cd sample_1_ctrl % salmon quant -i ~/salmonIndexes/human.gencode.v32.transcripts.index \ -1 PATH/vers/fichiers/FASTQ/sample_1_ctrl/sample_1_ctrl.filtered.R1.fastq.gz \ -2 PATH/vers/fichiers/FASTQ/sample_1_ctrl/sample_1_ctrl.filtered.R2.fastq.gz \ -l A -p 8 --validateMappings -o ./sample_1_ctrl_quant
- Plus à venir…
Références
(1)
Patro, R, Duggal, G, Love, M. I., Irizarry, R. A. & Kingsford, C., 2017. Salmon provides fast and bias-aware quantification of transcript expression.. Nature Methods, 14, pp.417.