nf-core/rnaseq
RNA sequencing analysis pipeline using STAR, RSEM, HISAT2 or Salmon with gene/isoform counts and extensive quality control.
3.16.0
). The latest
stable release is
3.17.0
.
Define where the pipeline should find input data and save output data.
Path to comma-separated file containing information about the samples in the experiment.
string
^\S+\.csv$
You will need to create a design file with information about the samples in your experiment before running the pipeline. Use this parameter to specify its location. It has to be a comma-separated file with 4 columns, and a header row. See usage docs.
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})$
Set this parameter to your e-mail address to get a summary e-mail with details of the run sent to you when the workflow exits. If set in your user config file (~/.nextflow/config
) then you don't need to specify this on the command line for every 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
If using a reference genome configured in the pipeline using iGenomes (not recommended), use this parameter to give the ID for the reference. This is then used to build the full paths for all required reference genome files e.g. --genome GRCh38
.
See the nf-core website docs for more 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 available this will be generated for you automatically. Combine with --save_reference
to save alignment 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 --genome
or --gtf
are not specified.
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, the sequences in this file will get concatenated to the existing genome FASTA file, a GTF file will be automatically created using the entire sequence as the gene, transcript, and exon features, and any alignment index will get created from the combined FASTA and GTF. It is recommended to save the reference with --save_reference
to re-use the index for future runs so you do not need to create it again.
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 a huge amount of RAM to build a genome index for larger genomes, if including splice sites and exons e.g. the human genome might typically require 200GB. If you specify less than this threshold for the HISAT2_BUILD
process then the splice sites and exons will be ignored, meaning that the process will require a lot less memory. If you are working with a small genome, set this parameter to a lower value to reduce the threshold for skipping this check. If using a larger genome, consider supplying more memory to the HISAT2_BUILD
process.
Specify if your GTF annotation is in GENCODE format.
boolean
If your GTF file is in GENCODE format and you would like to run Salmon i.e. --pseudo_aligner salmon
, you will need to provide this parameter in order to build the Salmon index appropriately.
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
This behaviour can be modified by specifying --gtf_extra_attributes
when running the pipeline. Note that you can also specify more than one desired value, separated by a comma e.g. --gtf_extra_attributes gene_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
The feature type used from the GTF file when generating the biotype plot with featureCounts.
Directory / URL base for iGenomes references.
string
s3://ngi-igenomes/igenomes/
Do not load the iGenomes reference config.
boolean
Do not load igenomes.config
when running the pipeline. You may choose this option if you observe clashes between custom parameters and those supplied in igenomes.config
.
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) e.g.
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 will have to be built at least once with this pipeline (see --save_reference
to save index). It 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 will have to be built at least once with this pipeline (see --save_reference
to save index). It 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 the sequences defined by the '--ribo_database_manifest' parameter will be used.
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 defined in the SortMeRNA GitHub repo are used. You can see an example in the pipeline Github repository in assets/rrna-default-dbs.txt
.
Please note that commercial/non-academic entities require licensing for SILVA
for these default databases.
Options for processing reads with unique molecular identifiers
Enable UMI-based read deduplication.
boolean
UMI pattern to use. Can be either 'string' (default) or 'regex'.
string
string
More details 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
More details 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
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
It can be quite time consuming generating these output stats - see #827.
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
Failure to set a good kmer size could cause issues with quantification with Kallisto or Salmon. This is mostly an issue for short reads (<50bp), where the default kmer size of 31 is an problem.
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
See Salmon docs.
Minimum percentage of uniquely mapped reads below which samples are removed from further processing.
number
5
Some downstream steps in the pipeline will fail if this threshold is 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 an alignment index is generated by the pipeline use this parameter to save it to your results folder. These can then be used for future pipeline runs, reducing processing times.
Save the trimmed FastQ files in the results directory.
boolean
By default, trimmed FastQ files will not be saved to the results directory. Specify this flag (or set to true in your config file) to copy these files to the results directory when complete.
Save the intermediate BAM files from the alignment step.
boolean
By default, intermediate BAM files will not be saved. The final BAM files created after the appropriate filtering step are always saved to limit storage usage. Set this parameter to also save other intermediate BAM files.
Where possible, save unaligned reads from either STAR, HISAT2 or Salmon to the results directory.
boolean
This may either be in the form of FastQ or BAM files depending on the options available for that particular tool.
Save read-by-read assignments from Kraken2.
boolean
--kraken_db
parameter must be provided.
Save reads that were not given assignment from Kraken2.
boolean
--kraken_db
parameter must be provided.
Additional quality control options.
Specify the RSeQC modules to run.
string
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 tab for more information
Taxonomic level for Bracken abundance estimations.
string
First letter of Domain / Phylum / Class / Order / Family / Genus / 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 on the validity of the GTF with respect to the genome fasta file, or wish to disregard failures thriggered by the filtering module, activate this option.
Skip the 'transcript_id' checking component of the GTF filtering script used in the pipeline.
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 the adapter trimming step.
boolean
Use this if your input FastQ files have already been trimmed outside of the workflow or if you're very confident that there is no adapter contamination in your data.
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
If you're running offline, Nextflow will not be able to fetch the institutional config files from the internet. If you don't need them, then this is not a problem. If you do need them, you should download the files from the repo and tell Nextflow where to find them with this parameter.
Institutional config name.
string
Institutional config description.
string
Institutional config contact information.
string
Institutional config URL link.
string
Set the top limit for requested resources for any single job.
Maximum number of CPUs that can be requested for any single job.
integer
16
Use to set an upper-limit for the CPU requirement for each process. Should be an integer e.g. --max_cpus 1
Maximum amount of memory that can be requested for any single job.
string
128.GB
^\d+(\.\d+)?\.?\s*(K|M|G|T)?B$
Use to set an upper-limit for the memory requirement for each process. Should be a string in the format integer-unit e.g. --max_memory '8.GB'
Maximum amount of time that can be requested for any single job.
string
240.h
^(\d+\.?\s*(s|m|h|d|day)\s*)+$
Use to set an upper-limit for the time requirement for each process. Should be a string in the format integer-unit e.g. --max_time '2.h'
Less common options for the pipeline, typically set in a config file.
Display help text.
boolean
Display version and exit.
boolean
Method used to save pipeline results to output directory.
string
The Nextflow publishDir
option specifies which intermediate files should be saved to the output directory. This option tells the pipeline what method should be used to move these files. See Nextflow docs for details.
Email address for completion summary, only when pipeline fails.
string
^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,5})$
An email address to send a summary email to when the pipeline is completed - ONLY sent if the pipeline does not exit 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 hook URL for messaging service
string
Incoming hook URL for messaging service. Currently, MS Teams and Slack are supported.
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
Show all params when using --help
boolean
By default, parameters set as hidden in the schema are not shown on the command line when a user runs with --help
. Specifying this option will tell the pipeline to show all parameters.
Validation of parameters fails when an unrecognised parameter is found.
boolean
By default, when an unrecognised parameter is found, it returns a warinig.
Validation of parameters in lenient more.
boolean
Allows string values that are parseable as numbers or booleans. For further information see JSONSchema docs.
Base URL or local path to location of pipeline test dataset files
string
https://raw.githubusercontent.com/nf-core/test-datasets/7f1614baeb0ddf66e60be78c3d9fa55440465ac8/