Skip to main content

SPECTRA: Unsupervised Analysis of Alternative Splicing

✂️ About

SPECTRA (Splicing-based Pattern Extraction and Clustering using TRAnscriptomics) is an end-to-end pipeline for discovering patient subtypes based on alternative splicing. It is a modernized and optimized version of the original OncoSplice algorithm.

SPECTRA leverages an iterative clustering strategy to identify stable and dominant splicing patterns across patient samples. The new implementation enhances the speed, accuracy, and modularity, allowing seamless integration into both command-line workflows and interactive Python environments.

SPECTRA Workflow

📌 Installation

SPECTRA can installed as a Python package via pip. We recommend using conda environment with python version set to 3.12.

pip3 install splicespectrax==2025.0.3

📚 Documentation

Detailed documentation on how to perform SPECTRA analysis is provided on ReadTheDocs now.

👩‍🏫 Tutorial

Example datasets: PSI files for each TCGA cancer can be downloaded from here.

SPECTRA can be used in two ways:

  • As a command-line tool for end-to-end execution
  • As a modular workflow, where individual functions are called step-by-step

See the tutorials and example scripts for each approach:

Command-Line Interface (CLI)

Run the entire pipeline with a single command using main.py. This is ideal for multiple dataset processing and automated workflows.

Modular Usage

Import and run individual components such as preprocessing, clustering, or visualization in a custom step-by-step analysis.

📝 Overview of Modules

Module Description
main.py Entry point for running the complete SPECTRA pipeline. Handles argument parsing and execution flow.
round_wrapper.py Wraps a single iteration of clustering (SPECTRA performs 3 iterations by default).
preprocess.py Performs variance-based and intercorrelation-based filtering of splicing events prior to clustering.
remove_redundancy.py Removes redundant splicing events based on intra-gene correlation.
feature_selection.py Implements PCA-based feature selection, similar to the splice-ICGS method in the original OncoSplice.
median_impute.py Imputes missing values in the splicing matrix using the median for each event.
visualizations.py Generates visual summaries, including splicing event annotation bar plots and cluster heatmaps.
determine_rank.py Automatically determines the optimal NMF rank (if not user-specified).
run_nmf.py Performs NMF clustering and assigns multi-label cluster memberships.
metadata_analysis.py Analyzes and annotates differential splicing events across clusters.
linear_svm.py Applies linear SVM for final cluster assignment.
correlation_depletion.py Identifies and depletes splicing events associated with a clustering round.
correlation_depletion_vectorized.py A faster version of correlationDepletion.py using imputed values and optimized calculations.

📖 Citation

Coming soon — citation information for referencing SPECTRA in publications.

Metadata

Release files for splicespectrax 2025.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for splicespectrax 2025.0.6
File Size Uploaded Provenance Actions
splicespectrax-2025.0.6.tar.gz 30.9 kB Without provenance Details for splicespectrax-2025.0.6.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for splicespectrax 2025.0.6
File Interpreter ABI Platform Actions
splicespectrax-2025.0.6-py3-none-any.whl Python 3 none any Details for splicespectrax-2025.0.6-py3-none-any.whl

Total release size: 65.7 kB

Release files / splicespectrax-2025.0.6.tar.gz

Download URL splicespectrax-2025.0.6.tar.gz
Size 30.9 kB
Tags Source
SHA-256 checksum
How to use checksums
85deab8b76859cc23b609c316ca631aac3dbfe8a2f8e480a51a50c665cac8145
BLAKE2b-256 checksum
How to use checksums
1190f0ab0ebf860f839d9187dbe148524b94df311ae3cc743e17f9951d46baf4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.0

Release files / splicespectrax-2025.0.6-py3-none-any.whl

Download URL splicespectrax-2025.0.6-py3-none-any.whl
Size 34.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
465edd7ad5585ca3cfc495bb795d37d87470b9180a3e70df10c71322279b8b91
BLAKE2b-256 checksum
How to use checksums
f914730ae9b5c02d6cf64b930e808e9393493a4f5ba94147b0f26d780d107e3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.0

Security for splicespectrax 2025.0.6

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.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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