Skip to main content

Pan-cancer detection of T-cell clonal expansion from single-cell RNA sequencing

Project description

PyPI version Python versions License Visitors

scXpand Logo

scXpand: Pan-cancer Detection of T-cell Clonal Expansion

Detect T-cell clonal expansion from single-cell RNA sequencing data without paired TCR sequencing

PreprintDocumentationInstallationQuick StartUsage GuideCitation

scXpand Datasets Overview

A framework for predicting T-cell clonal expansion from single-cell RNA sequencing data.

Manuscript in preparation - detailed methodology and benchmarks coming soon.

View full documentation for comprehensive guides and API reference.


Features

  • Multiple Model Architectures:
    • Autoencoder-based: Encoder-decoder with reconstruction and classification heads
    • MLP: Multi-layer perceptron
    • LightGBM: Gradient boosted decision trees
    • Linear Models: Logistic regression and support vector machines
  • Scalable Processing: Handles millions of cells with memory-efficient data streaming from disk during training
  • Automated Hyperparameter Optimization: Built-in Optuna integration for model tuning

Installation

For detailed installation instructions, please refer to our Installation Guide.

Published Version Install

CUDA version (NVIDIA GPU):

With pip:

pip install --upgrade scxpand-cuda --extra-index-url https://download.pytorch.org/whl/cu128

With uv:

uv pip install --upgrade scxpand-cuda --extra-index-url https://download.pytorch.org/whl/cu128

CPU/Apple Silicon/Other GPUs:

With pip:

pip install --upgrade scxpand

With uv:

uv pip install --upgrade scxpand

Development Setup (Install from Source)

See the Installation Guide


Quick Start

import scxpand
# Make sure that "your_data.h5ad" includes only T cells for the results to be meaningful
# Ensure that "your_data.var_names" are provided as Ensembl IDs (as the pre-trained models were trained using this gene representation)
# Please refer to our documentation for more information

# List available pre-trained models
scxpand.list_pretrained_models()

# Run inference with automatic model download
results = scxpand.run_inference(
    model_name="pan_cancer_autoencoder",  # default model
    data_path="your_data.h5ad"
)

# Access predictions
predictions = results.predictions
if results.has_metrics:
    print(f"AUROC: {results.get_auroc():.3f}")

See our Tutorial Notebook for a complete example with data preprocessing, T-cell filtering, gene ID conversion, and model application using a real breast cancer dataset.


Documentation

Setup & Getting Started:

Using Pre-trained Models:

Training Your Own Models:

Understanding Results:

📖 Full Documentation - Complete guides, API reference, and interactive tutorials


License

This project is licensed under the MIT License – see the LICENSE file for details.


Citation

If you use scXpand in your research, please cite:

Shorer, O., Amit, R., and Yizhak, K. (2025). scXpand: Pan-cancer detection of T-cell clonal expansion from single-cell RNA sequencing without paired single-cell TCR sequencing. Preprint at bioRxiv, https://doi.org/10.1101/2025.09.14.676069.

BibTeX
@article{shorer2025scxpand,
  title={scXpand: Pan-cancer detection of T-cell clonal expansion from single-cell RNA sequencing without paired single-cell TCR sequencing},
  author={Shorer, Ofir and Amit, Ron and Yizhak, Keren},
  year={2025},
  journal={bioRxiv},
  doi={https://doi.org/10.1101/2025.09.14.676069}
}

This project was created in favor of the scientific community worldwide, with a special dedication to the cancer research community.

We hope you'll find this repository helpful, and we warmly welcome any requests or suggestions - please don't hesitate to reach out!

Visitor Map

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

scxpand-0.4.5.dev0.tar.gz (7.0 MB view details)

Uploaded Source

Built Distribution

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

scxpand-0.4.5.dev0-py3-none-any.whl (141.2 kB view details)

Uploaded Python 3

File details

Details for the file scxpand-0.4.5.dev0.tar.gz.

File metadata

  • Download URL: scxpand-0.4.5.dev0.tar.gz
  • Upload date:
  • Size: 7.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for scxpand-0.4.5.dev0.tar.gz
Algorithm Hash digest
SHA256 3f007516473af05f9526af8d067c64097650920a39e8ce8226e5b7bb6c5b85ee
MD5 ec24f29ea49faebed68ece0a85f0967c
BLAKE2b-256 8b6093c09adc5f9f3c47ba3a9f7c829ec5cab7f5f378befec42caa6a86e4af18

See more details on using hashes here.

File details

Details for the file scxpand-0.4.5.dev0-py3-none-any.whl.

File metadata

  • Download URL: scxpand-0.4.5.dev0-py3-none-any.whl
  • Upload date:
  • Size: 141.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for scxpand-0.4.5.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 7eb11d8d1c34a9fbc82700e70f65b66e022808f4f165ce06a5821d24fa789c56
MD5 4a03d6d44bef7399f50089cb310f14be
BLAKE2b-256 6e7bcde401e531d3904c60a2ff28422d251014b25cabf2fd89eef828b1321f28

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