Skip to main content

ScanExitron

ScanExitron Logo

A computational workflow for exitron splicing identification from RNA-Seq data.

PyPI Version Bioconda Tests Status License


🌟 Features

  • Accurate Identification: High-performance detection of exitrons (exonic introns) directly from aligned RNA-Seq reads (BAM/CRAM).
  • VCF Conversion: Built-in support to convert results into standard VCF files for downstream variant analysis.
  • Bioconda Support: Easy deployment along with all underlying command-line dependencies.

🚀 Installation

Option 1: Via Bioconda (Recommended)

This installs scanexitron along with all required external compiled tools automatically:

conda install -c bioconda scanexitron

Option 2: Via PyPI

Installs the Python package. Note: You must install the external dependencies separately (see below).

pip install scanexitron

Option 3: From Source

git clone https://github.com/ylab-hi/ScanExitron.git
cd ScanExitron
pip install -e ".[dev]"

🛠️ External Dependencies

If you did not install via conda, make sure the following bioinformatics tools are installed and available on your system PATH:

Dependency Required Version Conda Install Command
🛠️ regtools 0.5.0 conda install -c bioconda regtools=0.5.0
🧬 samtools ≥ 1.10 conda install -c bioconda samtools
🗃️ bedtools ≥ 2.26 conda install -c bioconda bedtools

📂 Reference Data Setup

Download your genome FASTA and matching transcript annotation files. For example, to setup hg38 reference resources:

# Download and decompress the hg38 genome
wget https://hgdownload.cse.ucsc.edu/goldenpath/hg38/bigZips/hg38.fa.gz
gunzip hg38.fa.gz

# Download and decompress the Gencode release annotation
wget ftp://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_human/release_37/gencode.v37.annotation.gtf.gz
gunzip gencode.v37.annotation.gtf.gz

💻 Usage

🔍 1. Exitron Calling

Run scanexitron by pointing it to your reference FASTA, transcript annotation GTF, and the input BAM/CRAM file (which must have a .bai/.crai index file alongside it):

scanexitron run -i input.bam -r hg38.fa -g gencode.v37.annotation.gtf

Calling Options

Flag Default Description
-i, --input Required Path to the input BAM/CRAM file.
-r, --ref Required Path to the reference genome FASTA file.
-g, --gtf Required Path to the annotation GTF file.
-a, --ao 3 Minimum junction-spanning reads supporting the exitron.
-p, --pso 0.05 Minimum Percent Spliced Out (PSO) value.
-m, --mapq 50 Minimum mapping quality for alignment filtering.
-s, --strand 1 Strand specificity: 0 = unstranded, 1 = first-strand/RF, 2 = second-strand/FR.
-t, --threads 1 Number of threads to allocate for samtools.
-o, --output Input Stem Output prefix.
--verbose Off Enable verbose logging for debugging.

🔄 2. Convert to VCF

Format your exitron tabular output into a standard VCF file using scanexitron convert:

scanexitron convert -i sample.exitron -r hg38.fa -o sample.vcf

VCF Converter Options

Flag Default Description
-i, --input Required Path to the input tabular results (.exitron file).
-r, --ref Required Path to the reference genome FASTA file.
-o, --output output.vcf Path for the output VCF file.

📊 Output Format

Results are written to <input>.exitron as a tab-delimited file with the following schema:

Column Type Description
chrom String Chromosome name
start Integer Start position (0-based, half-open)
end Integer End position (0-based, half-open)
name String Junction identifier
ao Integer Number of supporting junction reads
strand String Genomic strand (+ or -)
gene_symbol String HGNC gene symbol
length Integer Exitron length in base pairs
splice_site String Donor–acceptor dinucleotides (e.g., GT-AG)
gene_id String Ensembl gene ID
pso Float Percent Spliced Out (relative exitron abundance)
psi Float Percent Spliced In
dp Float Average local sequencing depth
total_junctions Integer Total junction-spanning reads detected in the sample

Note: RegTools intermediate files (<input>.janno) are preserved in the directory for manual inspection.


👩‍💻 Development

Contributions and local development setups are welcome:

# Install development and testing dependencies
pip install -e ".[dev]"

# Run test suite
pytest

📖 Citation

If you use ScanExitron in your research, please cite our papers:


📄 License

This project is licensed under the terms of the MIT License.


📬 Contact & Support

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scanexitron-1.4.0.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scanexitron-1.4.0-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file scanexitron-1.4.0.tar.gz.

File metadata

  • Download URL: scanexitron-1.4.0.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for scanexitron-1.4.0.tar.gz
Algorithm Hash digest
SHA256 3c8f43ce3ab0bb7170c03d58ade9408e77f7ac744cffd54666ea977bb6b8ac85
MD5 7ddd9713774bada0a5c9522741728758
BLAKE2b-256 aee54a565a48a8960d50c606ccfb971d0b681ee8faaa8aefea09d1682af2d5c5

See more details on using hashes here.

Provenance

The following attestation bundles were made for scanexitron-1.4.0.tar.gz:

Publisher: release.yml on ylab-hi/ScanExitron

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scanexitron-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: scanexitron-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for scanexitron-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8b8312565d2c7e5e0b26b4b71b2f2920098efe33a88b58952b2e62f473629d46
MD5 2d63fde9bc510093a0c548c568279337
BLAKE2b-256 6017100867b7b69a10b587ec489d7eb45d2b42dd505efb65bc4fa1a87fbb212e

See more details on using hashes here.

Provenance

The following attestation bundles were made for scanexitron-1.4.0-py3-none-any.whl:

Publisher: release.yml on ylab-hi/ScanExitron

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.4.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page