Pipeline pour la transcriptomique basée sur la référence.
PiReT est installé à l'aide de conda. Assurez-vous donc que conda est installé et sur votre chemin. L'installation peut prendre jusqu'à 2 heures selon votre vitesse Internet.
À venir!
Pour que l’installation fonctionne, conda doit être installé. Voir ici pour obtenir des instructions sur la façon d'installer conda. Utilisez les commandes suivantes pour créer des environnements conda, puis installez les packages correspondants. Assurez-vous également qu'il n'existe pas d'environnement du nom de piret_env avant de tenter l'installation. Supprimez l’environnement s’il est déjà présent. Je recommande que si vous maîtrisez Python, utilisez cette instruction car vous aurez le contrôle de chaque étape de l'installation, et si quelque chose échoue, vous n'aurez pas à recommencer depuis le début.
git clone https://github.com/mshakya/piret.git
cd piret
conda create -n piret_env python=3.6.6 --yes
conda install -c bioconda faqcs -n piret_env --yes
conda install -c bioconda star hisat2 subread -n piret_env --yes
conda install -c bioconda subread stringtie -n piret_env --yes
conda install -c bioconda samtools bamtools bedtools -n piret_env --yes
conda install -c bioconda diamond=0.9.24 -n piret_env --yes
source activate piret_env
cd thirdparty
rm -rf eggnog-mapper
git clone https://github.com/mshakya/eggnog-mapper.git
cd eggnog-mapper
python download_eggnog_data.py -y
cd ..
cd ..
Rscript --no-init-file -e "if('BiocManager' %in% rownames(installed.packages()) == FALSE){install.packages('BiocManager',repos='https://cran.r-project.org')}";
# install optparse
Rscript --no-init-file -e "if('optparse' %in% rownames(installed.packages()) == FALSE){install.packages('optparse',repos='https://cran.r-project.org')}";
# install tidyverse
Rscript --no-init-file -e "if('tidyverse' %in% rownames(installed.packages()) == FALSE){install.packages('tidyverse',repos='https://cran.r-project.org')}";
# install R reshape2 packages
Rscript --no-init-file -e "if('reshape2' %in% rownames(installed.packages()) == FALSE){install.packages('reshape2',repos='https://cran.r-project.org')}";
# install R pheatmap packages
Rscript --no-init-file -e "if('pheatmap' %in% rownames(installed.packages()) == FALSE){install.packages('pheatmap',repos='https://cran.r-project.org')}";
# install R edgeR packages
Rscript --no-init-file -e "if('edgeR' %in% rownames(installed.packages()) == FALSE){BiocManager::install('edgeR')}";
# install R deseq2 packages
Rscript --no-init-file -e "if('DESeq2' %in% rownames(installed.packages()) == FALSE){BiocManager::install('DESeq2')}";
# install R pathview package
Rscript --no-init-file -e "if('pathview' %in% rownames(installed.packages()) == FALSE){BiocManager::install('pathview')}";
# install R gage package
Rscript --no-init-file -e "if('gage' %in% rownames(installed.packages()) == FALSE){BiocManager::install('gage')}";
# install R ballgown package
Rscript --no-init-file -e "if('ballgown' %in% rownames(installed.packages()) == FALSE){BiocManager::install('ballgown')}";
python setup.py install
$ git clone https://github.com/mshakya/piret.git
$ cd piret
$ ./installer.sh
Par exemple:
$ git clone https://github.com/mshakya/piret.git
$ cd piret
$ ./installer.sh piret_env
Assurez-vous que le nom de l'environnement (par exemple piret_env) n'existe pas encore.
À venir!
Nous avons fourni un ensemble de données de test pour vérifier si l'installation a réussi ou non. Les fichiers fastq
peuvent être trouvés dans tests/fastqs
et les fichiers fasta de référence correspondants se trouvent dans tests/data
. Pour exécuter le test, depuis le répertoire piret
:
Pour exécuter des tests sur des ensembles de données eucaryotes :
$ cd piret
$ source activate piret_env
$LUIGI_CONFIG_PATH="/panfs/biopan01/scratch-311300/ecoli_usda/ecoli.cfg" bin/piret -c ecoli.cfg -d ecoli_piret -e exp_desn.txt
$LUIGI_CONFIG_PATH="full_path_to/piret/tests/test_euk.cfg" bin/piret -c tests/test_euk.cfg -d tests/test_euk -e tests/test_euk.txt
Pour exécuter des tests sur des ensembles de données Prokarya :
$LUIGI_CONFIG_PATH="full_path_to/piret/tests/test_prok.cfg" bin/piret -c tests/test_prok.cfg -d tests/test_prok -e tests/test_prok.txt
Pour exécuter des tests utilisant both
des ensembles de données procarya et eukarya :
$LUIGI_CONFIG_PATH="full_path_to/piret/tests/test_both.cfg" bin/piret -c tests/test_prok.cfg -d tests/test_prok -e tests/test_both.txt
Pour obtenir les identifiants KO des gènes, PiReT utilise emapper. L'installation conda de PiReT inclut également emapper. Cependant, sa base de données doit être téléchargée en suivant les instructions ici. Brièvement,
PiReT nécessite les dépendances suivantes, qui doivent toutes être installées et dans le PATH.
INSTALL.sh
téléchargera et installera miniconda, une version "mini" de conda
qui n'installe qu'une poignée de packages par rapport à anaconda usage: piret [-h] -d WORKDIR -e EXPDSN -c CONFIG [-v]
piret
optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit
required arguments:
-d WORKDIR working directory where all output files will be
processed and written (default: None)
-e EXPDSN tab delimited experimental design file
-c CONFIG, --config CONFIG
luigi config file for setting parameters that control
each step, see github repo for an example (default:
None)
Example runs:
piret -d -e -c
Un fichier de conception expérimentale comprend le nom de l'échantillon (SampleID), le chemin complet vers les fichiers fastq (Files) et différents groupes de vos échantillons (Group). Nous vous recommandons d'utiliser un éditeur de texte tel que BBedit ou TextWrangler pour générer le fichier de conception expérimentale délimité par des tabulations. L'exportation d'un fichier délimité par des tabulations directement à partir d'Excel a tendance à poser des problèmes de formatage. Si possible, évitez tout caractère spécial dans les noms d’échantillons et de groupes.
Par exemple:
samp1, samp_1 : good name
samp 1, samp.1: not a good name and will likely cause errors.
Un exemple de fichier de conception expérimentale peut être trouvé ici.
Toutes les options sont définies dans le fichier de configuration.
Toutes les sorties seront dans le working directory
. Le fichier de sortie principal est un fichier JSON concaténé appelé out.json
.
samp2
: Le nom de ce répertoire correspond au nom de l'échantillon. Dans ce dossier, il y a deux sous-dossiers :
mapping_results
Ce dossier contient des lectures mappées à l'aide de hisat2 dans les formats suivants. Si splice_sites_gff.txt
est présent, hisat2 s'aligne en fonction des sites d'épissage connus.*.sam
: sorties de hisat2*.bam
: généré à partir de .sam
hisat2
.*sTie.tab
: fichier délimité par des tabulations avec couverture, FPKM, TPM, pour tous les gènes et nouvelles transcriptions. Généré à l’aide d’une attache à chaîne.*sTie.gtf
: sortie de stringtie au format Primay GTF.trimming_results
Ce dossier contient les résultats du découpage et du filtrage de qualité à l'aide de FaQC.*_qc_report.pdf
: Un fichier de rapport CQ avec des chiffres.*.stats.txt
: Fichier récapitulatif avec le nombre de lectures avant et après QC. dossier ballgown
ballgown
. Le dossier doit être lu par le package R
ballgown
pour trouver des gènes significativement exprimés. Il y a un dossier par échantillon.
*merged_transcript.gtf
: Liste non redondante des transcriptions au format GTF fusionnées à partir de tous les échantillons.
featureCounts
: Un dossier contenant des tableaux de décomptes de featureCounts
.
both
options sont utilisées, le nombre de procaryotes se trouve dans ce fichier. Les eucaryotes se trouvent dans le fichier nommé euk_CDS.count
edgeR
: Un dossier contenant des tableaux et des figures traités principalement à l'aide du package R edgeR
pour détecter les gènes exprimés de manière significative. En fonction des options choisies, le dossier contiendra un ou deux dossiers, prokarya
et eukarya
. Dans ces dossiers se trouvent les fichiers et figures suivants.
*RPKM.csv
: Un tableau avec les valeurs RPKM pour tous les gènes dans tous les échantillons.*CPM.csv
: un tableau avec les valeurs CPM pour toutes les fonctionnalités dans tous les échantillons*feature_count_heatmap.pdf
: Heatmap basée sur les données de comptage pour les fonctionnalités répertoriées dans les fichiers gff.*feature_count_CPM_histogram.pdf
: Un histogramme des CPM.*MDS.pdf
: Un tracé MDS basé sur des lectures mappées sur des échantillons.group1__group2__gene__et.csv
: tableau avec le nom du gène, logFC, logCPM, PValue et FDR comparant le groupe 1 au groupe 2. Celui-ci contient tous les gènes qui ont un nombre.group1__group2__gene__sig.csv
: un sous-ensemble de group1__group2__gene__et.csv
avec tous les gènes significatifs en fonction de la valeur P spécifiée. Pour la suppression, puisque toutes les dépendances qui ne sont pas dans votre système sont installées dans PiReT
, supprimer ( rm -rf
) le dossier PiReT
suffit pour désinstaller le package. Avant de supprimer, vérifiez si vos fichiers de projet se trouvent dans le répertoire PiReT
.
Si vous utilisez PiReT, veuillez citer les articles suivants :
Droit d'auteur (XXXX). Triade Sécurité Nationale, LLC. Tous droits réservés.
Ce programme a été produit dans le cadre du contrat du gouvernement américain 89233218CNA000001 pour le Los Alamos National Laboratory (LANL), qui est exploité par Triad National Security, LLC pour le département américain de l'Énergie/National Nuclear Security Administration.
Tous les droits du programme sont réservés par Triad National Security, LLC et le Département américain de l'énergie/National Nuclear Security Administration. Le gouvernement se voit accorder, pour lui-même et pour les autres personnes agissant en son nom, une licence mondiale non exclusive, payante et irrévocable sur ce matériel, lui permettant de reproduire, de préparer des œuvres dérivées, de distribuer des copies au public, de se produire et d'afficher publiquement, et de permettre à d'autres de le faire. donc.
Il s'agit d'un logiciel open source ; vous pouvez le redistribuer et/ou le modifier selon les termes de la licence GPLv3. Si un logiciel est modifié pour produire des œuvres dérivées, ce logiciel modifié doit être clairement identifié, afin de ne pas le confondre avec la version disponible auprès de LANL. Le texte intégral de la licence GPLv3 peut être trouvé dans le fichier de licence dans la branche de développement principale du référentiel.