Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Alternative splicing from RNA-seq data

This mini-protocol produces normalized, gene-annotated splicing phenotypes for splicing-QTL analysis using LeafCutter.

Miniprotocol Timing

Timing: TBD

Overview

The splicing-calling module quantifies splicing with LeafCutter, which derives intron excision ratios from STAR splice-junction files without relying on a transcript annotation.

The normalization module performs missingness and variability filtering followed by quantile normalization. The gene-annotation module then assigns coordinates and phenotype groups required by TensorQTL.

Steps

Analysis goalCommands to run, in orderInputs
LeafCutter from aligned RNA-seq data1 → 2 → 3output/rnaseq/protocol_example.rnaseq.bam.list.txt; STAR/WASP alignment directories
LeafCutter from a precomputed ratio matrix2 → 3input/rnaseq/protocol_example.leafcutter.intron_usage_perind.counts.gz; tests/fixtures/gene_annotation/protocol_example.leafcutter.intron_count.tsv

Within the selected route, run the commands in numerical order. The bundled example data support the precomputed-matrix route; the calling route requires aligned BAM files.

1. Quantify intron usage with LeafCutter

What it does: leafcutter extracts splice junctions and clusters introns to calculate per-sample intron excision ratios.

2. Normalize LeafCutter ratios

What it does: leafcutter_norm filters introns and clusters, mean-imputes retained missing values, and quantile-normalizes the ratio matrix.

3. Annotate LeafCutter phenotypes

What it does: annotate_leafcutter_isoforms maps introns to genes and writes the coordinate-sorted phenotype matrix and phenotype-group file used by TensorQTL.

Output

Route/stepOutput filename and relative pathDescription
LeafCutter callingoutput/splicing/leafcutter/*_intron_usage_perind.counts.gz; *_intron_usage_perind_numers.counts.gzIntron excision ratios and supporting intron counts
LeafCutter normalizationinput/rnaseq/protocol_example.leafcutter.intron_usage_perind.counts.gz_raw_data.txt; input/rnaseq/protocol_example.leafcutter.intron_usage_perind.counts.gz_raw_data.qqnorm.txtQC-filtered and quantile-normalized ratios
LeafCutter annotationoutput/splicing/leafcutter/protocol_example.leafcutter.intron_usage_perind.counts.gz_raw_data.qqnorm.formated.bed.gz; output/splicing/leafcutter/protocol_example.leafcutter.intron_usage_perind.counts.gz_raw_data.qqnorm.phenotype_group.txtTensorQTL phenotype and grouping files

Anticipated Results

Each route ends with a coordinate-sorted, bgzip-compressed phenotype matrix and a matching phenotype-group file. Rows represent introns, columns represent samples, and the normalized values can be supplied directly to splicing-QTL association testing.

Command Interface