Skip to main content

A Python framework for discovering isoform-switch and splicing modules from bulk RNA-seq by combining gene-local compositional modeling with splice-graph-aware latent network inference.

Project description

IsoGraph

IsoGraph is a Python research software package for discovering isoform-switch and splicing modules from bulk RNA-seq. It combines gene-local compositional modeling with network inference so researchers can move from transcript-level counts to gene-module structure, trait associations, and reproducible benchmark artifacts.

Core Capabilities

  • Generate and benchmark against the permanent core_v1 fixture suite and the large-scale scale_v1 suite (6k–12k genes, 25:1–50:1 genes-to-samples ratios).
  • Freeze the bundled real_caudate_aa_v1 real-data fixture from local BrainSeq inputs.
  • Fit the deterministic baseline backend from the command line on a prepared dataset bundle.
  • Run baseline, latent, graph, vae, wgcna, or gpu_latent backends programmatically or through the benchmark runner.
  • Export reproducible artifacts, benchmark reports, calibration summaries, and snapshot comparisons.

Installation

Install the core package from PyPI:

pip install isograph

The core package supports Python 3.11 through 3.14.

Optional backends

The vae and gpu_latent backends require PyTorch:

pip install torch

See the PyTorch installation guide for GPU/CUDA builds.

The wgcna backend requires R with the WGCNA package and Rscript on PATH.

Quickstart

Run a minimal benchmark on the bundled toy fixture (VAE is the default backend):

isograph benchmark -- \
  fixture_filter=toy_v1 \
  stage_name=readme_smoke

This writes benchmark artifacts under artifacts/benchmarks/readme_smoke/toy_v1/ and JSON reports under artifacts/reports/.

Using Your Own Data

IsoGraph expects a prepared dataset bundle containing a manifest.json, aligned sample metadata, feature tables, and dense count matrices. The current command-line path for custom data is:

isograph fit \
  --dataset-path path/to/my_dataset_bundle \
  --output-dir artifacts/fits/my_dataset

At present, fit runs the deterministic baseline backend. For latent, graph, or VAE backends on your own bundle, use the Python API directly. The detailed walkthroughs live in the Wiki, and the formal data model is documented in the RTD source tree.

Documentation

  • Reference docs for publication on Read the Docs live in docs.
  • Step-by-step tutorials for installation, data preparation, and own-data workflows live in the GitHub Wiki.
  • Project planning and staged development history remain in docs/staged-roadmap.md.

Citation

If you use IsoGraph in research, cite the software repository using the metadata in CITATION.cff. If a manuscript or preprint becomes available later, that can be added as a preferred citation target without changing the software citation path.

Acknowledgements

IsoGraph is supported by the National Institute on Minority Health and Health Disparities award R00 MD0169640 and the Alzheimer's Association award 25AARG-1413315.

Reproducibility and Data Provenance

  • The benchmark suite is fixture-driven and designed to preserve regression targets across development stages.
  • The bundled real-data workflow freezes a reproducible real_caudate_aa_v1 dataset from local BrainSeq-derived inputs and caches intermediate selections under benchmarks/cache/real_data/.
  • Benchmark, calibration, runtime, and snapshot artifacts are written into versioned directories under artifacts/ and snapshots/.

Limitations

  • The benchmark CLI is optimized for the bundled fixture suite rather than arbitrary user-defined suites.
  • The fit CLI currently exposes only the baseline backend for custom datasets.
  • The VAE and GPU-latent backends require a separate PyTorch installation.
  • The WGCNA backend requires R with the WGCNA package installed.
  • The bundled freeze-real workflow depends on local BrainSeq-style source files and is not a generic data-ingestion command for arbitrary cohorts.

Project details


Download files

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

Source Distribution

isograph-0.1.2.tar.gz (61.6 kB view details)

Uploaded Source

Built Distribution

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

isograph-0.1.2-py3-none-any.whl (77.1 kB view details)

Uploaded Python 3

File details

Details for the file isograph-0.1.2.tar.gz.

File metadata

  • Download URL: isograph-0.1.2.tar.gz
  • Upload date:
  • Size: 61.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.3 CPython/3.14.4 Linux/6.19.10-arch1-1

File hashes

Hashes for isograph-0.1.2.tar.gz
Algorithm Hash digest
SHA256 caca8c648db6a788d4354f9ac16b34e9782d6bc2a7c80164556e064d66d005f6
MD5 1f99b7765d68402661f8adf21724bb12
BLAKE2b-256 012b25046baff6ac296ab20c14bb398fe11016b28c048abecd1dfd5ffd38e61f

See more details on using hashes here.

File details

Details for the file isograph-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: isograph-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 77.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.3 CPython/3.14.4 Linux/6.19.10-arch1-1

File hashes

Hashes for isograph-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 cf82b30a5e0351220c142c8275bc66b5b57c3dd9c072ea6b1f503eba59881a07
MD5 f13857e7594f982fe35ff1c24aa4d304
BLAKE2b-256 f6afc229b5b02413a6bd3a1ce6314c289fa2d1d3550fb38bfec5368aeaeb4cfb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page