Introduction
The nf-core/rnadnavar is a bioinformatics best-practice analysis pipeline for RNA somatic mutation detection able to perform in parallel.
Initially designed for cancer research, the pipeline uses different variant calling algorithms and applies a consensus approach. A final filtering stage, should provide a set of annotated somatic variants.
The pipeline is built using Nextflow, a workflow tool to run tasks across multiple compute infrastructures in a very portable manner. It uses Docker/Singularity containers making installation trivial and results highly reproducible. The Nextflow DSL2 implementation of this pipeline uses one container per process which makes it much easier to maintain and update software dependencies. Where possible, these processes have been submitted to and installed from nf-core/modules in order to make them available to all nf-core pipelines, and to everyone within the Nextflow community!
Pipeline summary
Depending on the options and samples provided, the
pipeline will run different tasks. This is controlled
mainly through --step and --tools parameters. This
is a summary of the possible tasks to run with the pipeline:
- Quality control and trimming (enabled by
--trim_fastqand runsFastQCandfastp) - Map Reads to Reference (BWA-mem, BWA-mem2, dragmap and/or STAR)
- GATK preprocessing for DNA and RNA bulk sequencing
samples (
GATK MarkDuplicates,GATK SplitNCigarReads,GATK BaseRecalibratorandGATK ApplyBQSR) - Summarise alignment statistics (
samtools stats,mosdepth) - Variant calling (enabled with
--tools)Mutect2Strelka2SAGE
- Annotation with
VEP(enabled with--toolsaddingvep) - Normalisation of VCFs with VT (enabled with
--toolsaddingnormalisation) - Transformation of VCF to MAF and consensus of variant
calling results (enabled with
--toolsaddingconsensus) - Filtering of MAF files applying optional gnomad,
whitelisting and blacklisting (enabled with
--toolsaddingfiltering) - Realignment step where reads from regions where a variant
was found will be extracted and re-processed, only for
RNA due to higher levels of background noise (enabled
with
--toolsaddingrealignment). - Filtering of MAF files specific for RNA (enabled with
--toolsaddingrna_filtering)
Usage
If you are new to Nextflow and nf-core, please refer to this page on how to set-up Nextflow. Make sure to test your setup with -profile test before running the workflow on actual data.
Key requirements for the analysis
- RNA tumor samples must be associated with a DNA normal sample using the same patient ID. DNA tumour sample is optional.
- Sample types are specified with status: 0 (normal DNA), 1 (tumor DNA), 2 (tumor RNA)
- Reference files are required for the analysis.
Quick Start
The typical command for running the pipeline is:
nextflow run nf-core/rnadnavar \
-r <VERSION> \
-profile <PROFILE> \
--input samplesheet.csv \
--outdir <OUTDIR> \
--genome <GENOME> \
--tools <TOOLS>Pipeline Steps
The pipeline can start from different entry points but tools need to be specified to run. If you are planning to run the pipeline by stages please read usage.
Input requirements
You will need to create a samplesheet with information about the samples you want to analyze. The samplesheet must be a comma-separated file with a header row.
Essential columns are:
patient- Unique patient identifierstatus- Sample type (0/1/2)sample- Unique sample identifier- And one of these options:
- if variant calling is going to be performed of these three options should be an input (note that this is included in the
realignmentstep by default):fastq_1,fastq_2- Paths to paired-end FASTQ files (for raw data) (this also needslanecolumn)bam,bai- Paths to BAM files and indices (for pre-aligned data)cram,crai- Paths to CRAM files and indices (for pre-aligned data)
- if the starting step is from
consensusand norealignmentwill be performed (add--skip_tools 'realignment'to your command or params file) then the input are VCF/MAF:caller- Caller used to generate that MAF (to annotate it during the consensus approach)maf- Paths to MAF file
- if
realignmentis desired then please addnormal_idand take a look to usage.
- if variant calling is going to be performed of these three options should be an input (note that this is included in the
Examples CSVs:
Starting from mapping:
patient,sample,status,lane,fastq_1,fastq_2
PT1,DNA_NORMAL_SAMPLE,0,LX,DNA_NORMAL_SAMPLE_L002_R1_001.fastq.gz,DNA_NORMAL_SAMPLE1_L002_R2_001.fastq.gz
PT1,DNA_TUMOUR_SAMPLE,1,LX,DNA_TUMOUR_SAMPLE_L002_R1_001.fastq.gz,DNA_TUMOUR_SAMPLE_L002_R2_001.fastq.gz
PT1,RNA_TUMOUR_SAMPLE,2,LX,RNA_TUMOUR_SAMPLE_L002_R1_001.fastq.gz,RNA_TUMOUR_SAMPLE_L002_R2_001.fastq.gzStarting from consensus no realignment:
patient,sample,status,caller,maf
PT1,RNA_TUMOUR_SAMPLE_1,2,mutect,DNA_TUMOUR_SAMPLE_1.mutect.maf
PT1,RNA_TUMOUR_SAMPLE_1,2,strelka,RNA_TUMOUR_SAMPLE_1.strelka.maf
PT1,RNA_TUMOUR_SAMPLE_2,2,mutect,DNA_TUMOUR_SAMPLE_2.mutect.maf
PT1,RNA_TUMOUR_SAMPLE_2,2,strelka,RNA_TUMOUR_SAMPLE_2.strelka.mafParameters
Please provide pipeline parameters via the CLI or Nextflow -params-file option. Custom config files including those provided by the -c Nextflow option can be used to provide any configuration except for parameters; see docs.
For more details and further functionality, please refer to the usage documentation and the parameter documentation.
Pipeline output
To see the results of an example test run with a full size dataset refer to the results tab on the nf-core website pipeline page. For more details about the output files and reports, please refer to the output documentation.
Credits
The nf-core/rnadnavar was originally written by Raquel Manzano Garcia at Cancer Research UK Cambridge Institute with the continuous support of Maxime U Garcia. The workflow is based on RNA-MuTect which was originally published by Yizhak, et al 2019 (Science)
We thank the following people for their assistance in the development of this pipeline: TBC
Contributions and Support
If you would like to contribute to this pipeline, please see the contributing guidelines.
For further information or help, don’t hesitate to get in touch on the Slack #rnadnavar channel (you can join with this invite).
Citations
An extensive list of references for the tools used by the pipeline can be found in the CITATIONS.md file.
You can cite the nf-core publication as follows:
The nf-core framework for community-curated bioinformatics pipelines.
Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.
Nat Biotechnol. 2020 Feb 13. doi: 10.1038/s41587-020-0439-x.