Skip to main content

Splitpea

This is the Python package implementation of Splitpea: SPLicing InTeractions PErsonAlized, a method for calculating and analyzing protein-protein interaction changes due to alternative splicing. It integrates differential exon usage (PSI values) with domain-domain interactions (DDIs) and protein-protein interactions (PPIs) to generate rewired PPI networks compairing two conditions.

Requirements and Installation

  • Python >= 3.8
  • Packages:
    • numpy, networkx, intervaltree, ipykernel, matplotlib, plotnine, scikit-learn, adjustText, importlib_resources, requests

This package also requires tabix which can be installed system wide:

sudo apt-get install tabix

or in a conda environment:

conda install -c bioconda tabix

The Splitpea package itself is installable directly from PyPI:

pip install splitpea

Usage

Splitpea takes as input skipped exon data (SE) at the sample or differential expression level from SUPPA2 or rMATS and maps potential changes onto PPI networks resulting in a NetworkX graph object. The package provides two forms of operation for building rewired networks: condition-specific mode, which takes differential exon usage results directly from SUPPA2 or rMATS, and sample-specific mode, which takes rMATS individual sample files and compares them with a multi-sample reference background using the algorithm outlined in our 2023 Splitpea paper. We outline these different modes in detail in the example Jupyter Notebooks found in the examples directory.

When running from SUPPA2, Splitpea requires both the .psivec and the .dpsi files as input. Starting from rMATS, Splitpea accepts either the SE.MATS.JC.txt or SE.MATS.JCEC.txt file. In sample-specific mode, users can choose from a single rMATS input file of SE events (example ending in single) or a matrix of SE events where each sample in the matrix is individually compared against the background to create a sample-specific rewired network (example ending in multi).

Splitpea ships bundled reference datasets (protein-protein interaction, domain-domain interaction, Entrez-Pfam mappings, and gene symbol conversion) for human and mouse. These load automatically based on --species unless you override paths when using the run command. The package also includes normal tissue splicing backgrounds for tissues in GTEx as assembled in the IRIS data set. The full list of supported tissues are as follows, and will be downloaded if used in sample-specific mode with the preprocess_pooled command:

AdiposeTissue, AdrenalGland, Bladder, Blood, BloodVessel, Brain, Breast, CervixUteri, Colon, Esophagus, FallopianTube, Heart, Kidney, Liver, Lung, Muscle, Nerve, Ovary, Pancreas, Pituitary, Prostate, SalivaryGland, Skin, SmallIntestine, Spleen, Stomach, Testis, Thyroid, Uterus, Vagina.

Quick start

Splitpea can be run from the command line or within Python.

Main subcommands:

  • run — Build a rewired network
  • plot — Visualize a saved network
  • stats — Compute edge/gene statistics
  • preprocess_pooled — Generate the differential exon table for sample-specific mode
  • get_consensus_network - Generate summary consensus networks across multiple rewired networks
  • analyze_consensus_threshold — Analyze network properties of a consensus network

Command line examples

# Condition-specific mode (SUPPA2)
splitpea run diffSplice.psivec diffSplice.dpsi suppa_example_output --differential_format suppa2

# Condition-specific mode (rMATS)
splitpea run SE.MATS.JCEC.txt rmats_example_output --differential_format rmats

Note: The second argument is the output file prefix.

Examples / tutorials

We include three sample workflows to help users get started.

  1. Condition-specific mode: takes the output of rMATS and SUPPA2 to produce a single rewired network.

  2. Sample-specific mode - single sample: which runs Splitpea on rMATS data for a single sample versus a background collection of healthy normal tissue samples to produce a single rewired network.

  3. Sample-specific mode - multiple samples: which runs Splitpea on a group of rMATS samples versus a background collection of healthy normal tissue samples to produce one network for each rMATS sample.

Citation

If you use Splitpea, please cite:

@inproceedings{dannenfelser2023splitpea,
  title={Splitpea: quantifying protein interaction network rewiring changes due to alternative splicing in cancer},
  author={Dannenfelser, Ruth and Yao, Vicky},
  booktitle={Pacific Symposium on Biocomputing 2024},
  pages={579--593},
  year={2023},
  organization={World Scientific}
}

Metadata

Release files for splitpea 1.0.0

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

Source distribution (sdist)

Source distribution for splitpea 1.0.0
File Size Uploaded
splitpea-1.0.0.tar.gz 15.5 MB Details

Built distribution (wheel)

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

Total release size: 31.2 MB

Release files / splitpea-1.0.0.tar.gz

Download URL splitpea-1.0.0.tar.gz
Size 15.5 MB
Tags Source
SHA-256 checksum
How to use checksums
f77e3508578209b82d64f2ceb5069c889ec67f38f264930fb0d905746bce6062
BLAKE2b-256 checksum
How to use checksums
05700576eed6b68d1a9b388f3ff4ecb6995426727e9d8eb24c09c59d706c3ebf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release files / splitpea-1.0.0-py3-none-any.whl

Download URL splitpea-1.0.0-py3-none-any.whl
Size 15.7 MB
Tags Python 3
SHA-256 checksum
How to use checksums
920cdf57e9fcf8491e4191f7306844e83a0868bc0354734d25485760470019ff
BLAKE2b-256 checksum
How to use checksums
b75670e710f4f4a5181f04e7c6ee63ce6879d4db799954b4fac003a676abb1fe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

0.1.1

2 release files

0.1.0

2 release 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