2. Full Length Bulk Secondary Processing

2. Full Length Bulk Secondary Processing#

After performing QC on the aligned reads using LongRNAseqQC, we can proceed to perform transcript analysis using an array of tools put togther by folks using Long read sequencing.

There are multiple applications one can use for many of these sub-steps, below is the currently recommended workflow.

High-level Workflow for Bulk:#

The current recommended high-level workflow is as below:

  • Performing Sample QC and PCA with Ptr utility from Trinity toolkit.

  • minimap2 for aligning reads

  • Isoquant for Reference guided Isoform Discovery.

  • Stringtie merge to merge reconstructed assemblies to generate new Ref

  • Quantification with Isoquant against reconstructed ref

  • Gffcompare to compare against reference and fetch Ref Ids

  • Differential Expression analysis using DEseq2 implementation from the Trinity

  • Exploring isoform switches and isoform visualization with isoformSwitchAnalysisR

  • MDLgenomeview for inspecting read support

Test Data#

The test dataset used for demonstrating downstream processing workflows for Full Length correspond to HG002 from the Genome-in-a-Bottle project and K562 cell lines.

2.1 minimap2#

The minimap2 workflow, as detailed below, maps long reads or their assemblies to a reference genome. The details and parameters can be found in the minimap2 manual

Workflow configuration for runnning the minimap2 workflow over cloud platforms supporting Cromwell like Terra can be found here:- The workflow is designed to be run on a sample. Technical replicates must be merged before.

Dockstore : Minimap2_LR.wdl
Github: minimap2_LR
Test Data can be found here (public, requester-pays) : add file path
Table 5 minimap2#

Option name

example value

description

inputReads

this.ubam

Replace “ubam” with the column that contains the path to the input file in the sample table. Formats supported are ubam and fastq(.gz)

referenceGenome

“gs://mdl-refs/GRCh38/GRCh38_no_alt.fa”

Reference FASTA file for the assembly.

juncBED

“gs://mdl-refs/GRCh38/GRCh38.gencode.v39.annotation.sorted.bed”

(Optional) Reference BED splice junctions file for the assembly

sampleName

this.sample_id

Replace “sample_id” with the column that contains the name of the samples in the sample table.

readType

“PacBioIsoSeq”

Type of reads provided, one of “PacBioCLR” “ONTGenomic” “PacBioHiFi” SplicedLongReads” “ONTDirectRNA” “PacBioIsoSeq”

customArguments

“-G 1250k”

(Optional) String to be added to the minimap2 call, in the example, to allow introns up to 1M250bp long which is a bit more than the longest human intron size in gencode

keepUnmapped

FALSE

(true/false) Whether to keep the reads for which no alignment was found or not.

allowSecondary

FALSE

(true/false) Whether to include secondary alignments.

Example of input arguments for minimap2 workflow for alignment with Human Ref genome

 1 {
 2  "Minimap2_LR.Minimap2Task.cpu" : "${8}",
 3  "Minimap2_LR.Minimap2Task.diskSizeGB" : "${500}",
 4  "Minimap2_LR.inputReads" : "${this.ubam}",
 5  "Minimap2_LR.referenceGenome" : "gs://mdl-refs/GRCh38/GRCh38_no_alt.fa",
 6  "Minimap2_LR.juncBED" : "gs://mdl-refs/GRCh38/GRCh38.gencode.v39.annotation.sorted.bed",
 7  "Minimap2_LR.sampleName" : "${this.sample_id}",
 8  "Minimap2_LR.readType" : "PacBioIsoSeq",
 9  "Minimap2_LR.customArguments" : "-G 1250k",
10  "Minimap2_LR.keepUnmapped" : "true",
11  "Minimap2_LR.allowSecondary" : "false",
12  "Minimap2_LR.preemptible_tries" : "${3}"
13}