intronIC (intron Interrogator and Classifier)
Classify intron sequences as U12-type (minor spliceosome) or U2-type (major spliceosome). A calibrated 42-model RBF-SVM ensemble scores each intron's splice-site and branch-point motifs — background-corrected against the species' own intron pool — into a species-agnostic probability (P_motif), and a per-species adjudicator decides whether the genome carries a detectable U12-type population.
Quick Start
pip install intronIC
# Classify introns (loads default model automatically)
intronIC -g genome.fa.gz -a annotation.gff3.gz -n species_name -p 8
# Extract sequences without classification
intronIC extract -g genome.fa.gz -a annotation.gff3.gz -n species_name -p 8
# Verify installation with bundled test data
intronIC test -p 4
How It Works
Most eukaryotic introns (~99.5%) are spliced by the major (U2-type) spliceosome; a small fraction (~0.5%) are spliced by the minor (U12-type) spliceosome. U12-type introns carry a conserved TCCTTAAC branch point motif and have either AT-AC (~25%) or GT-AG (~75%) terminal dinucleotides. intronIC scores those motifs and classifies each intron.
Given a genome FASTA and a GFF/GTF annotation, intronIC runs five stages:
- Extract — pull introns from the annotation's CDS/exon coordinates (isoform handling, canonical/non-canonical terminus filters, partial-CDS handling).
- Score motifs — score each intron's 5′ splice site, branch point, and 3′ splice site against position-weight matrices built from a U12-type reference set.
- Background-correct — score against a background model built from the species' own intron pool, so a high score reflects genuine U12-type signal rather than that genome's base composition. These are the raw motif features.
- Classify — feed the raw features to a calibrated 42-model RBF-SVM ensemble → a per-intron ensemble margin →
P_motif, a single species-agnostic probability that the motif is U12-type (Platt-calibrated; also reported 0–100 asadjusted_score). - Adjudicate — at the genome level, test whether the strong U12-type calls form a real population standing above the species' own U2-type score tail (
z_excess, plus a call-strength gate) →motif_category∈ {DETECTED,INCONCLUSIVE,NOT_DETECTED,UNASSESSABLE}. An intron is labelledtype_id = u12whenP_motif ≥ 0.5and the genome is notNOT_DETECTED.
See Technical Details in the wiki for the full algorithm.
Where the Minor Things Are (WtMTA)
Where the Minor Things Are — WtMTA v2 (www.introns.info/WtMTA), a database of minor (U12-type) introns generated with intronIC v3 across ~2,600 eukaryotic genomes (~350M introns, ~1M high-confidence U12-type). Interactive species tree, splice-site logos, and bulk downloads.
Relationship to the published method (v1)
intronIC v3 keeps the PWM motif scoring of the Moyer et al. (2020) method but replaces the per-species z-normalization that made scores comparable across genomes. That normalization assumed every genome matched the human reference geometry, and failed in two ways: it under-called divergent bearers (e.g. Amborella, Oryza) and produced false positives in genomes that have lost the minor spliceosome. v3 instead scores background-corrected raw motif log-odds — six features, an ensemble of 42 SVMs trained on 97 species across 14 clades — and calibrates the output to P_motif, a species-agnostic probability. All per-species reasoning moves to one output-level adjudicator, which reports whether a genome carries a detectable U12-type population (motif_category), referenced to that genome's own U2-type background.
| v1 (Moyer 2020) | v3 (current) | |
|---|---|---|
| Features | 3 motif scores | 6 raw features (→9 with interactions) |
| Classifier | 1 human-trained SVM | 42-model ensemble, 97 species |
| Cross-species | per-species z-normalization | species-agnostic P_motif |
| Per-species logic | folded into normalization | output-level adjudicator |
For the full comparison, see Technical Details → Relationship to the published method (v1).
Key Features
- Pretrained, cross-species model loaded automatically — no per-run training or normalization step.
P_motif(0–1) /adjusted_score(0–100) per intron, plus a genome-levelmotif_categorycall.- Streaming mode (default) roughly halves peak memory on large genomes (~5.3 GB for full human at
-p 5) and is bit-identical to in-memory. - Parallel scoring via
-p N, and comprehensive per-intron metadata (phase, transcript position, parent gene/transcript).
Documentation
Full documentation lives in the intronIC Wiki:
- Quick Start — Installation, dependencies, resource usage
- Overview — Classification approach and scientific background
- Output Files — File formats and score interpretation
- Technical Details — Algorithm, features, species adjudication
- Usage Info — Complete CLI reference
- Example Usage — Common workflows
- Changelog — Release notes and version history
Citation
If you use intronIC in your research, please cite:
Moyer DC, Larue GE, Hershberger CE, Roy SW, Padgett RA. (2020) Comprehensive database and evolutionary dynamics of U12-type introns. Nucleic Acids Research 48(13):7066-7078. doi:10.1093/nar/gkaa464
Support
- intronIC Wiki — Documentation
- GitHub Issues — Bug reports
- GitHub Discussions — Questions and ideas
Contributing
See CONTRIBUTING.md for guidelines.
git clone https://github.com/glarue/intronIC.git
cd intronIC
make install # Set up development environment
make test # Run tests
License
Metadata
Release files for intronIC 3.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| intronic-3.0.0.tar.gz | 94.3 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| intronic-3.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 150.2 MB
Release files / intronic-3.0.0.tar.gz
| Download URL | intronic-3.0.0.tar.gz |
|---|---|
| Size | 94.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8c1b5d27ceaeb7c4f5ebb9c7565f08498e43dc65cc7c5c7ecf04f2db4b339924
|
|
BLAKE2b-256 checksum How to use checksums |
7147c3414e573d595d0dd7b5445ef56f15dc164f212c7866f40292dfa13cce24
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 19, 2026.
Transparency logRelease files / intronic-3.0.0-py3-none-any.whl
| Download URL | intronic-3.0.0-py3-none-any.whl |
|---|---|
| Size | 55.8 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0b4bd600f96103c5c821f429e201f2b3086b23698d7b1b0e853b833be5b27a0d
|
|
BLAKE2b-256 checksum How to use checksums |
9b371e0022f9694ddceb8a608e2ff3e000b74fc8905a3003fecb9aec1007795a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 19, 2026.
Transparency log