RNA-COUNT-SALMON (⤫ LEGACY)

Version: 11-07-2019 Tags: RNA-Seq / Count / Salmon / Abundance Estimation

Salmon uses the pseudo mapping approach to estimate the k-mers abundance within your RNA-Seq reads.

You may find more information about Salmon at:

Pipeline dependencies

This pipeline requires the following packages to be run. Any other additional requirements are being installed dynamically.

Conda:

  • conda-forge::python=3.8.2

  • conda-forge::pytest=5.4.2

  • conda-forge::datrie=0.8.2

  • conda-forge::git=2.26.2

  • conda-forge::jinja2=2.11.2

  • conda-forge::pygraphviz=1.5

  • conda-forge::flask=1.1.2

  • conda-forge::pandas=1.0.3

  • conda-forge::zlib=1.2.11

  • conda-forge::openssl=1.1.1g

  • conda-forge::networkx=2.4

  • bioconda::snakemake=5.19.3

  • conda-forge::singularity=3.5.3

Additionally, the following prerequisites are non-optional:

  • Conda

  • Genome sequence and annotation

Input files

Please find below the list of required input files:

  • Fastq-formatted transcriptome sequences

  • GTF-formatted genome annotation

Output files

Please find below the list of expected output files:

  • TSV formatted abundance estimation

  • Optional FastQC and MultiQC reports

  • Complete quantification report embedding material and methods

Notes

This pipeline takes the cold storage into account. No need to copy your data in advance.

In order to install, use “conda” to install required environment, and “git” to clone the git repository.

Installation

While installing the workflow, you may run the following commands (order matters):

Case

Command line

git

# This command clones the github repository

if [ ! -d "${RNA_COUNT_SALMON_DIR:?}" ]; then git clone https://github.com/tdayris-perso/rna-count-salmon.git "${RNA_COUNT_SALMON_DIR:?}"; fi

conda

# This command creates the conda virtual environment. It requires an

# access to the git repository (see above).

conda env create --force --file "${STRONGR_DIR:?}/workflows/genomic-expression/rna-count-salmon/environment.yaml"

Testing

In order to test the pipeline, you may try the following commands:

Case

Command line

quick-test

cd "${RNA_COUNT_SALMON_DIR:?}"

make conda tests

make all-unit-tests

make test-conda-report.html

make clean

Preparation

In order to prepare a run, you may try the following commands:

Case

Command line

activate

# This command activates the conda environment available after the

# installation process.

conda activate rna-count-salmon || source activate rna-count-salmon

gustaveroussy-references-hg38

# This points to HG38 references for Gustave Roussy's flamingo

FASTA="/mnt/beegfs/database/bioinfo/Index_DB/Fasta/Gencode/GRCH38/RNA/gencodeV27_transcripts.fa"

GTF="/mnt/beegfs/database/bioinfo/Index_DB/GTF/Gencode/GRCH38/gencodeV27.gtf"

COLD_STORAGE=(/mnt/isilon /mnt/archivage)

config

# This command builds the configuration file

python3.8 "${RNA_COUNT_SALMON_DIR:?}/scripts/prepare_config.py" "${FASTA:?}" "${GTF:?}"--cold_storage "${COLD_STORAGE:?}" --workdir "${RNA_COUNT_SALMON_PREPARE_DIR:?}" --aggregate --libType A

paired-end-design

#This command builds the design file for pair-ended data

python3.7 "${RNA_COUNT_SALMON_DIR:?}/scripts/prepare_design.py" "${RNA_COUNT_SALMON_PREPARE_DIR:?}"

single-end-design

# This command builds the design file for single-ended data

python3.7 "${RNA_COUNT_SALMON_DIR:?}/scripts/prepare_design.py" "${RNA_COUNT_SALMON_PREPARE_DIR:?}" --single

Execution

In order to execute the pipeline, you may run the following commands:

Case

Command line(s)

local

source activate rna-count-salmon || conda activate rna-count-salmon

snakemake -s "${RNA_COUNT_SALMON_DIR:?}/Snakefile" -r -p --configfile config.yaml -j 4 --use-conda

torque

# While reserving optimal threads and memory requirements,

# the choice of the queue might not be optimal.

# See profiles below.

source activate rna-count-salmon || conda activate rna-count-salmon

snakemake -s "${RNA_COUNT_SALMON_DIR:?}/Snakefile" -r -p --configfile config.yaml -j 100 --cluster "qsub -V -d ${RNA_COUNT_SALMON_WORKDIR:?} -j oe -l nodes=1:ppn={threads},mem={resources.mem_mb}mb,walltime={resources.time_min}:00" --use-conda

slurm

# While reserving optimal threads and memory requirements,

# the choice of the queue might not be optimal.

# See profiles below.

source activate rna-count-salmon || conda activate rna-count-salmon

snakemake -s "${RNA_COUNT_SALMON_DIR:?}/Snakefile" -r -p --configfile config.yaml -j 100 --cluster "sbatch --mem={resources.mem_mb} --time={resources.time_min} --cpus-per-task={threads}" --use-conda

profile

{'\# Requires slurm profile installation, see': None}

source activate rna-count-salmon || conda activate rna-count-salmon

snakemake -s "${RNA_COUNT_SALMON_DIR:?}/Snakefile" --configfile config.yaml --profile slurm

report

snakemake -s "${RNA_COUNT_SALMON_DIR:?}/Snakefile" --configfile config.yaml --report