This pipeline uses the Snakemake workflow manager to process RNA-seq data from nucleotide converted datasets such as SLAM-Seq, TimeLapse-seq or DART-seq, based on the detection of single nucleotide conversions for targeted RNA identification. The code is based on the HISAT-3N alignment tool within the Snakemake framework for automated and parallel running, and combined with different stategies for nucelotide-conversion oriented analysis.
Since the HISAT-3N tool is not yet available as a conda package, the user has to download HISAT-3N scripts manually following the HISAT-3N installation steps and indicate the location of the hisat-3n folder as a variable within the config.yaml (see below).
As soon as a compatible installation is implemented we will add it to the pipeline.
To use this pipeline you would first need to create a Snakemake environment and and activate it. See more.
-
Use this template to create your own project repo.
-
Create the
config/sample_manifest.tsvusing the following structure:- Identifier: Unique sample ID used on the raw
.fastq.gzsequencing files - Sample_type: Tissue, cell type, etc.
- Treatment: Condition (treated/untreated, fed/starved, etc.)
- Bio_rep: Biological replicate number
- Labeling_method: Metabolic labeling method (SLAMseq or TimeLapse)
- Labeling_time: Incubation time for methabolic labeling
- Target_genome: ENCODE target genome for sequencing (supported options: M25, M32, 19, 38)
- Sequencer: Sequencer to define
—2colourparameter for the trimming (supported options: HiSeq4000, NovaSeq, NextSeq500, NovaSeqX) - Seq_mode: Library preparation strategy (supported options: mRNA, totalRNA)
- Seq_length: Sequencing length
- Fastq_handle: Particular handle useful for raw
.fastq.gzfiles selection using the name from the sequencing facility (number, extension, etc.) - Fastq_lanes: Number of
.fastq.gzfiles lanes from the sequencing facility (used formerge_fq_lanesrule)
An example of the sample manifest is available here.
- Identifier: Unique sample ID used on the raw
-
Copy your raw sequencing data to
resources/fastq_seq/raw, the names of the files must correspond to the values indicated on the sample manifest columns, using the following structure:# Read 1 - Lane 1 {Identifier}_S{Fastq_handle}_L001_R1_001.fastq.gz # Read 1c {Identifier}_S{Fastq_handle}_L002_R1_001.fastq.gz # Read 2 - Lane 1 {Identifier}_S{Fastq_handle}_L001_R2_001.fastq.gz # Read 2 - Lane 1 {Identifier}_S{Fastq_handle}_L002_R2_001.fastq.gzThe names inside the
{}correspond to the column name on theconfig/sample_manifest.tsv. The pipeline autoamtically merges lane files (if applicable) and renames the files to:# Read 1 {Sample_type}_{Treatment}_Chase-time_{chase_time_h}_Bio-rep_{Bio_rep}_R1.fastq.gz # Read 2 {Sample_type}_{Treatment}_Chase-time_{chase_time_h}_Bio-rep_{Bio_rep}_R2.fastq.gzAgain, with the corresponding values on the
config/sample_manifest.tsv. If yopu wish to change the name of the raw files yo can do so changing the values ofTARGETS['raw_seq']on theSnakefileandmerge_lanes.smkrule.
Changing the structure `{Sample_type}_{Treatment}_Chase-time_{chase_time_h}_Bio-rep_{Bio_rep}` of filenames is not recommended and we don't ensure the proper functioning of the pipeline once it is done.
-
Check and change processing parameters on your
config/config.yamlaccording to your analysis set-up. -
Run the pipeline.
Your pipeline should look like this:
<YOUR PROJECT FOLDER> ├── config │ ├── config.yaml │ └── sample_manifest.tsv ├── profiles | └── profile ├── resources | └── fastq_seq | └── raw | ├── {Sample_type}_{Treatment}_Chase-time_{chase_time_h}_Bio-rep_{Bio_rep}_R1.fastq.gz | └── {Sample_type}_{Treatment}_Chase-time_{chase_time_h}_Bio-rep_{Bio_rep}_R2.fastq.gz └── workflowUse the following command on your project folder:
snakemake --profile profiles/<YOUR_PROFILE> -j<N_JOBS>For more options check the --help
-
This pipeline only works with paired-end sequencing reads.
-
The default configurations for this workflow are suitable to run snakemake on the
Helmholtz-Munich HPCand usingcondato deal with software dependencies. If one wishes to run the pipeline on a different computing platform, the profiles need to be adapted accordingly. -
The pipeline only supports GENCODE genomes as reference, choose the right
GENCODE Realeaseas value for theTarget_genomeentry in yourconfig/sample_manifest.tsv. These are the equivalent realeases for GENCODE and UCSC databases:Organism GENCODE Realease GENCODE Genome UCSC Genome Mouse M25 GRCm38 mm10 Mouse M32 (Latest) GRCm38 mm39 Human 19 GRCh37 h19 Human 38 GRCh38 h38
Paulina Rosales-Becerra, Kevin Brokers & Robert Schneider