| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| plugin | 2026-06-16 | ||
| src | 2026-06-16 | ||
| stringtie.gtf | 2026-06-16 | 63.5 MB | |
| short.junc.info | 2026-06-16 | 10.1 MB | |
| long.junc.info | 2026-06-16 | 22.0 MB | |
| infraglong-st2.gtf | 2026-06-16 | 64.7 MB | |
| GetUniqueJuncCov.sh | 2026-06-16 | 550 Bytes | |
| GetUniqueAndShareInfo.sh | 2026-06-16 | 2.3 kB | |
| GetUniqueAndShareInfo-InGTF.sh | 2026-06-16 | 1.2 kB | |
| GetJunctionInfo.sh | 2026-06-16 | 170 Bytes | |
| CountLowCovAS.R | 2026-06-16 | 1.5 kB | |
| CountLowCovAS_and_FisherTest.R | 2026-06-16 | 2.2 kB | |
| chess3.1.3.GRCh38.junc | 2026-06-16 | 9.1 MB | |
| ReadMe.md | 2026-06-16 | 6.5 kB | |
| Totals: 14 Items | 169.5 MB | 0 |
Reproducing Alternative Splicing Analyses in Supplemental Table S5 and Supplemental Table S6
This directory contains scripts and example data required to reproduce the alternative splicing (AS) analyses reported in Supplemental Table S6 for the ONT-CapTrap-data_1 dataset.
✨ Overview
The analysis compares transcript assemblies generated by:
- Native long reads only (StringTie2)
- InFragLong-enhanced assembly (InFragLong + StringTie2)
AS events are classified into:
- Lost-AS: Present in the native long-read assembly but absent after InFragLong integration.
- Gained-AS: Newly detected after InFragLong integration.
- Retained-AS: Detected in both assemblies.
The downstream analyses quantify:
- Native long-read support for each AS event.
- Enrichment of low-abundance AS events among Lost-AS and Gained-AS categories.
- Fisher’s exact tests comparing Lost-AS or Gained-AS against Retained-AS.
Software Requirements
Before running the pipeline from raw BAM files, compile the source code:
cd src
make release
Required Reference File
The following file must be placed in the working directory:
chess3.1.3.GRCh38.junc
This file contains annotated splice junctions extracted from the CHESS v3.1.3 annotation.
It can be generated from the CHESS GTF file using:
plugin/get_junction_fromGTF chess3.1.3.GRCh38.gtf > chess3.1.3.GRCh38.junc
Example Data Provided
We provide the following files for the ONT-CapTrap-data_1 dataset:
chess3.1.3.GRCh38.junc long.junc.info short.junc.info stringtie.gtf infraglong-st2.gtf
The files long.junc.info and short.junc.info can also be regenerated from BAM files using:
bash ./GetJunctionInfo.sh short.bam long.bam
after compiling the source code.
Using the provided files, all analyses corresponding to ONT-CapTrap-data_1 in Supplemental Table S6 can be reproduced directly.
Step 1. Extract Junction Information
If starting from BAM files:
bash ./GetJunctionInfo.sh short.bam long.bam
Output: long.junc.info and short.junc.info. These files contain splice junction information extracted from native long reads and synthetic short reads, respectively.
Step 2. Identify Shared and Unique Junctions
bash ./GetUniqueAndShareInfo.sh
This script compares splice junctions detected from native long-read alignments and synthetic short-read alignments and identifies annotated alternative splicing (AS) events that are uniquely supported by either data type.
Output:
long.unique: AS events detected only in native long-read alignments.short.unique: AS events detected only in synthetic short-read alignments.
In addition, the script reports to the terminal the numbers of AS events supported by:
- native long reads only,
- synthetic short reads only,
- both native long reads and synthetic short reads (consensus).
These statistics correspond to the results reported in Supplemental Table S5.
Step 3. Generate Transcript Assemblies
Generate transcript assemblies using: StringTie2 and InFragLong (with Stringtie2 and -c 1) to obtain: stringtie.gtf and infraglong-st2.gtf
The resulting assemblies (stringtie.gtf and infraglong-st2.gtf) are used in the downstream analyses to identify Lost-AS, Gained-AS, and Retained-AS events.
For convenience, the assembly results for the ONT-CapTrap-data_1 dataset are already provided in this directory, so this step can be skipped when reproducing the results reported in Supplemental Table S6.
Step 4. Classify Alternative Splicing Events
bash ./GetUniqueAndShareInfo-InGTF.sh
Output:
-
junc.infst2.uniq (e.g., Gained AS events,present only after introducing synthetic short reads)
-
junc.st2.uniq (e.g., Lost AS events present only in native long-read assemblies)
-
junc.share (e.g.,Retained AS events present in both assemblies).
In addition, the script prints to the terminal:
-
the number of Gained-AS, Lost-AS, and Retained-AS events;
-
the number of unannotated splice junctions in each category.
These statistics correspond to the AS-event counts reported in Supplemental Table S6 .
Step 5. Calculate Native Long-Read Support
For each AS category, calculate support from native long reads:
bash GetUniqueJuncCov.sh junc.st2.uniq long.junc.info > junc.st2.uniq.cov
bash GetUniqueJuncCov.sh junc.infst2.uniq long.junc.info > junc.infst2.uniq.cov
bash GetUniqueJuncCov.sh junc.share long.junc.info > junc.share.cov
Outputs:
| File | AS category |
|---|---|
| junc.st2.uniq.cov | Lost-AS |
| junc.infst2.uniq.cov | Gained-AS |
| junc.share.cov | Retained-AS |
Each file records the number of native long reads supporting the corresponding splice junctions.
Step 6. Count Low-Abundance AS Events
Low-abundance AS events are defined as splice junctions supported by ≤ 2 native long reads.
Rscript CountLowCovAS.R junc.st2.uniq.cov junc.infst2.uniq.cov junc.share.cov
This script reports:
- Number of low-abundance AS events
- Number of non-low-abundance AS events
for:
- Lost-AS
- Gained-AS
These counts correspond to those reported in Supplemental Table S6,the results prints to the terminal.
Step 7. Perform Fisher's Exact Tests
Lost-AS vs Retained-AS
Rscript CountLowCovAS_and_FisherTest.R junc.share.cov junc.st2.uniq.cov Lost
This test evaluates whether low-abundance AS events are enriched among Lost-AS events relative to Retained-AS events.
Gained-AS vs Retained-AS
Rscript CountLowCovAS_and_FisherTest.R junc.share.cov junc.infst2.uniq.cov Gained
This test evaluates whether low-abundance AS events are enriched among Gained-AS events relative to Retained-AS events.
Reproducing Supplemental Table S6 (ONT-CapTrap-data_1)
Using the provided files:
chess3.1.3.GRCh38.junc long.junc.info short.junc.info stringtie.gtf infraglong-st2.gtf
and executing the commands described above, users can reproduce all statistics reported for ONT-CapTrap-data_1 in Supplemental Table S6, including:
- Numbers of Lost-AS, Gained-AS, and Retained-AS events.
- Native long-read support for each AS category.
- Counts of low-abundance and non-low-abundance AS events.
- Fisher’s exact test results.