nf-core/rnaseq
RNA sequencing analysis pipeline using STAR, RSEM, HISAT2 or Salmon with gene/isoform counts and extensive quality control.
Define where the pipeline should find input data and save output data.
Path to the sample sheet (CSV) containing metadata about the experimental samples.
string
^\S+\.csv$
Provide the full path to a comma-separated sample sheet with 4 columns and a header row. This file is required to run the pipeline. See the nf-core/rnaseq sample sheet documentation for example format.
The output directory where the results will be saved. You have to use absolute paths to storage on Cloud infrastructure.
string
Email address for completion summary.
string
^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$
Provide your email address to receive a summary report when the workflow completes. If set in your user config file (~/.nextflow/config
), you don't need to specify this for each run.
MultiQC report title. Printed as page header, used for filename if not otherwise specified.
string
Reference genome related files and options required for the workflow.
Name of iGenomes reference.
string
^[a-zA-Z0-9_\-\.]+$
If using a reference genome configured with iGenomes (not recommended), provide the ID for the reference (e.g., --genome GRCh38
). This builds paths for all required reference files. See the nf-core documentation for details.
Path to FASTA genome file.
string
^\S+\.fn?a(sta)?(\.gz)?$
This parameter is mandatory if --genome
is not specified. If you don't have the appropriate alignment index, it will be generated automatically. Use with --save_reference
to store the index for future runs.
Path to GTF annotation file.
string
^\S+\.gtf(\.gz)?$
This parameter is mandatory if --genome
is not specified.
Path to GFF3 annotation file.
string
^\S+\.gff(\.gz)?$
This parameter must be specified if neither --genome
nor --gtf
is provided.
Path to BED file containing gene intervals. This will be created from the GTF file if not specified.
string
^\S+\.bed(\.gz)?$
Path to FASTA transcriptome file.
string
^\S+\.fn?a(sta)?(\.gz)?$
FASTA file to concatenate to genome FASTA file e.g. containing spike-in sequences.
string
^\S+\.fn?a(sta)?(\.gz)?$
If provided, sequences in this file will be concatenated to the genome FASTA file. A GTF file will be automatically created using these sequences, and alignment indices will be created from the combined files. Use --save_reference
to reuse these indices in future runs.
Splice sites file required for HISAT2.
string
Path to directory or tar.gz archive for pre-built STAR index.
string
Path to directory or tar.gz archive for pre-built HISAT2 index.
string
Path to directory or tar.gz archive for pre-built RSEM index.
string
Path to directory or tar.gz archive for pre-built Salmon index.
string
Path to directory or tar.gz archive for pre-built Kallisto index.
string
Minimum memory required to use splice sites and exons in the HiSAT2 index build process.
string
200.GB
^\d+(\.\d+)?\.?\s*(K|M|G|T)?B$
HiSAT2 requires significant RAM to build genome indices for large genomes with splice sites and exons (human genome typically needs 200GB). If you provide less memory than this threshold, splice sites and exons will be ignored, reducing memory requirements. For small genomes, set a lower value; for larger genomes, provide more memory.
Specify if your GTF annotation is in GENCODE format.
boolean
If your GTF file is in GENCODE format and you want to run Salmon (using --pseudo_aligner salmon
), enable this parameter to build the Salmon index correctly.
By default, the pipeline uses the gene_name
field to obtain additional gene identifiers from the input GTF file when running Salmon.
string
gene_name
Modify this parameter to change which attributes are extracted from the GTF file when running Salmon. You can specify multiple values separated by commas (e.g., --gtf_extra_attributes gene_id,transcript_id
).
Define the attribute type used to group features in the GTF file when running Salmon.
string
gene_id
The attribute type used to group feature types in the GTF file when generating the biotype plot with featureCounts.
string
gene_biotype
By default, the pipeline assigns reads based on the 'exon' attribute within the GTF file.
string
exon
Specifies the feature type from the GTF file to use when generating the biotype plot with featureCounts.
Do not load the iGenomes reference config.
boolean
Prevent loading of igenomes.config
when running the pipeline. Use this option if you encounter conflicts between custom parameters and those in the iGenomes configuration.
The base path to the igenomes reference files
string
s3://ngi-igenomes/igenomes/
Options to adjust read trimming criteria.
Specifies the trimming tool to use - available options are 'trimgalore' and 'fastp'.
string
Extra arguments to pass to Trim Galore! command in addition to defaults defined by the pipeline.
string
Extra arguments to pass to fastp command in addition to defaults defined by the pipeline.
string
Minimum number of trimmed reads below which samples are removed from further processing. Some downstream steps in the pipeline will fail if this threshold is too low.
integer
10000
Options for filtering reads prior to alignment
Path to comma-separated file containing a list of reference genomes to filter reads against with BBSplit. You have to also explicitly set --skip_bbsplit false
if you want to use BBSplit.
string
The file should contain 2 columns: short name and full path to reference genome(s), for example:
mm10,/path/to/mm10.fa
ecoli,/path/to/ecoli.fa
Path to directory or tar.gz archive for pre-built BBSplit index.
string
The BBSplit index must be built at least once with this pipeline. Use --save_reference
to save the index, which can then be provided via --bbsplit_index
for future runs.
Path to directory or tar.gz archive for pre-built sortmerna index.
string
The SortMeRNA index must be built at least once with this pipeline. Use --save_reference
to save the index, which can then be provided via --sortmerna_index
for future runs.
Enable the removal of reads derived from ribosomal RNA using SortMeRNA.
boolean
Any patterns found in sequences defined by the --ribo_database_manifest
parameter will be used for filtering.
Text file containing paths to fasta files (one per line) that will be used to create the database for SortMeRNA.
string
${projectDir}/workflows/rnaseq/assets/rrna-db-defaults.txt
By default, rRNA databases from the SortMeRNA GitHub repository are used. See the example in assets/rrna-default-dbs.txt
. Note: commercial/non-academic entities require SILVA licensing for these databases.
Options for processing reads with unique molecular identifiers
Enable UMI-based read deduplication.
boolean
Specifies the tool to use for UMI deduplication - available options are 'umitools' and 'umicollapse'.
string
UMI pattern to use. Can be either 'string' (default) or 'regex'.
string
string
Detailed information can be found in the UMI-tools documentation.
The UMI barcode pattern to use e.g. 'NNNNNN' indicates that the first 6 nucleotides of the read are from the UMI.
string
Detailed information can be found in the UMI-tools documentation.
The UMI barcode pattern to use if the UMI is located in read 2.
string
After UMI barcode extraction discard either R1 or R2 by setting this parameter to 1 or 2, respectively.
integer
The character that separates the UMI in the read name. Most likely a colon if you skipped the extraction with UMI-tools and used other software.
string
^\S+$
Method to use to determine read groups by subsuming those with similar UMIs. All methods start by identifying the reads with the same mapping position, but treat similar yet nonidentical UMIs differently.
string
Generate output stats when running "umi_tools dedup".
boolean
Generating these output statistics can be time-consuming. See issue #827 for more information.
Options to adjust parameters and filtering criteria for read alignments.
Specifies the alignment algorithm to use - available options are 'star_salmon', 'star_rsem' and 'hisat2'.
string
Specifies the pseudo aligner to use - available options are 'salmon'. Runs in addition to '--aligner'.
string
Kmer length passed to indexing step of pseudoaligners
integer
31
Setting an appropriate kmer size is crucial for quantification with Kallisto or Salmon. This is particularly important for short reads (<50bp), where the default size of 31 can cause problems.
Create a CSI index for BAM files instead of the traditional BAI index. This will be required for genomes with larger chromosome sizes.
boolean
When using pre-built STAR indices do not re-extract and use splice junctions from the GTF file.
boolean
Override Salmon library type inferred based on strandedness defined in meta object.
string
Refer to the Salmon documentation for details on library types.
Minimum percentage of uniquely mapped reads below which samples are removed from further processing.
number
5
Downstream pipeline steps may fail if this threshold is set too low.
Sequencing center information to be added to read group of BAM files.
string
Perform reference-guided de novo assembly of transcripts using StringTie i.e. dont restrict to those in GTF file.
boolean
Extra arguments to pass to STAR alignment command in addition to defaults defined by the pipeline. Only available for the STAR-Salmon route.
string
Extra arguments to pass to Salmon quant command in addition to defaults defined by the pipeline.
string
Extra arguments to pass to Kallisto quant command in addition to defaults defined by the pipeline.
string
In single-end mode Kallisto requires an estimated fragment length. Specify a default value for that here. TODO: use existing RSeQC results to do this dynamically.
integer
200
In single-end mode, Kallisto requires an estimated standard error for fragment length. Specify a default value for that here. TODO: use existing RSeQC results to do this dynamically.
integer
200
The fraction of stranded reads that must be assigned to a strandedness for confident assignment. Must be at least 0.5.
number
0.8
The difference in fraction of stranded reads assigned to 'forward' and 'reverse' below which a sample is classified as 'unstranded'. By default the forward and reverse fractions must differ by less than 0.1 for the sample to be called as unstranded.
number
0.1
Additional output files produces as intermediates that can be saved
Save FastQ files after merging re-sequenced libraries in the results directory.
boolean
If this option is specified, intermediate FastQ and BAM files produced by UMI-tools are also saved in the results directory.
boolean
If this option is specified, intermediate FastQ files containing non-rRNA reads will be saved in the results directory.
boolean
If this option is specified, FastQ files split by reference will be saved in the results directory.
boolean
If generated by the pipeline save the STAR index in the results directory.
boolean
If the pipeline generates an alignment index, use this parameter to save it to your results folder for future pipeline runs, reducing processing time.
Save the trimmed FastQ files in the results directory.
boolean
By default, trimmed FastQ files are not saved. Enable this option to copy these files to the results directory.
Save the intermediate BAM files from the alignment step.
boolean
By default, only final filtered BAM files are saved to conserve storage. Enable this option to also save intermediate BAM files from the alignment process.
Where possible, save unaligned reads from either STAR, HISAT2 or Salmon to the results directory.
boolean
Output may be in FastQ or BAM format depending on the options available for the specific alignment tool used.
Save read-by-read assignments from Kraken2.
boolean
The --kraken_db
parameter must be provided to use this option.
Save reads that were not given assignment from Kraken2.
boolean
The --kraken_db
parameter must be provided to use this option.
Additional quality control options.
Extra arguments to pass to the fq lint command.
string
--disable-validator P001
Use vst transformation instead of rlog with DESeq2.
boolean
true
See the DESeq2 documentation for details on transformations.
Comma-separated list of RSeQC modules to run.
string
bam_stat,inner_distance,infer_experiment,junction_annotation,junction_saturation,read_distribution,read_duplication
Available modules include: bam_stat, inner_distance, infer_experiment, junction_annotation, junction_saturation, read_distribution, read_duplication.
Tool to use for detecting contaminants in unaligned reads - available options are 'kraken2' and 'kraken2_bracken'
string
Database when using Kraken2/Bracken for contaminant screening.
string
See the usage documentation for more information on setting up and using Kraken2 databases.
Taxonomic level for Bracken abundance estimations.
string
Use the first letter of taxonomic levels: Domain, Phylum, Class, Order, Family, Genus, or Species.
Options to skip various steps within the workflow.
Skip filtering of GTF for valid scaffolds and/ or transcript IDs.
boolean
If you're confident in your GTF file's compatibility with the genome FASTA file, or want to ignore filtering errors, enable this option.
Skip the 'transcript_id' checking component of the GTF filtering script used in the pipeline. Ensure the GTF file is valid.
boolean
Skip BBSplit for removal of non-reference genome reads.
boolean
true
Skip the UMI extraction from the read in case the UMIs have been moved to the headers in advance of the pipeline run.
boolean
Skip linting checks during FASTQ preprocessing and filtering.
boolean
Skip the adapter trimming step.
boolean
Use this option if your FastQ files have already been trimmed or if you're certain they contain no adapter contamination.
Skip all of the alignment-based processes within the pipeline.
boolean
Skip all of the pseudoalignment-based processes within the pipeline.
boolean
Skip picard MarkDuplicates step.
boolean
Skip bigWig file creation.
boolean
Skip StringTie.
boolean
Skip FastQC.
boolean
Skip Preseq.
boolean
true
Skip dupRadar.
boolean
Skip Qualimap.
boolean
Skip RSeQC.
boolean
Skip additional featureCounts process for biotype QC.
boolean
Skip DESeq2 PCA and heatmap plotting.
boolean
Skip MultiQC.
boolean
Skip all QC steps except for MultiQC.
boolean
Parameters used to describe centralised config profiles. These should not be edited.
Git commit id for Institutional configs.
string
master
Base directory for Institutional configs.
string
https://raw.githubusercontent.com/nf-core/configs/master
When running offline, Nextflow cannot retrieve institutional configuration files from the internet. If needed, download these files from the repository and specify their location with this parameter.
Institutional config name.
string
Institutional config description.
string
Institutional config contact information.
string
Institutional config URL link.
string
Less common options for the pipeline, typically set in a config file.
Display version and exit.
boolean
Method used to save pipeline results to output directory.
string
Controls how files are saved to the output directory through Nextflow's publishDir
directive. See the Nextflow documentation for available options.
Email address for completion summary, only when pipeline fails.
string
^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$
Specify an email address to receive a summary report only when the pipeline fails to complete successfully.
Send plain-text email instead of HTML.
boolean
File size limit when attaching MultiQC reports to summary emails.
string
25.MB
Do not use coloured log outputs.
boolean
Incoming Webhook URL for messaging service
string
URL for messaging service integration. Currently supports Microsoft Teams and Slack.
Custom config file to supply to MultiQC.
string
Custom logo file to supply to MultiQC. File name must also be set in the MultiQC config file
string
Custom MultiQC yaml file containing HTML including a methods description.
string
Boolean whether to validate parameters against the schema at runtime
boolean
true
Base URL or local path to location of pipeline test dataset files
string
https://raw.githubusercontent.com/nf-core/test-datasets/7f1614baeb0ddf66e60be78c3d9fa55440465ac8/
Suffix to add to the trace report filename.
string
^[a-zA-Z0-9_\-\.{}]+$
You can use '{date}' as a placeholder which will be replaced with the current date and time in the format 'yyyy-MM-dd_HH-mm-ss'. For example, 'run_{date}' will become 'run_2023-05-15_14-30-45'.