Skip to main content

scState: A pathway-informed graph transformer framework for decoding stem cell state transitions from scRNA-seq data

Project description

scState: Decoding stem cell state transitions through pathway-informed heterogeneous graph representations

Note: This project is for internal testing purposes only. Do not use it in a production environment.

We developed scState, a pathway-informed graph transformer framework for identifying stem cells and resolving quiescent and activated stem cell states from scRNA-seq data. By integrating pathway activity with adversarial representation learning in a heterogeneous graph architecture, scState enables stem cell identification, cell state discrimination, pathway-level interpretation, and trajectory inference.

Keywords: scRNA-seq, graph transformer, adversarial learning, stem cell, cell state transition


Installation

System requirements

  • Python 3.8.x
  • Linux system is recommended
  • GPU is recommended for faster model training, but CPU installation is also supported

Installation steps

1. Create a new conda environment

conda create --name scState python=3.8 -y
conda activate scState

2. Install PyTorch and PyTorch Geometric

Install PyTorch, PyTorch Geometric, and torchmetrics before installing scState.

GPU version with CUDA 11.8

pip install https://download.pytorch.org/whl/cu118/torch-2.4.1%2Bcu118-cp38-cp38-linux_x86_64.whl
pip install https://data.pyg.org/whl/torch-2.4.0%2Bcu118/torch_scatter-2.1.2%2Bpt24cu118-cp38-cp38-linux_x86_64.whl
pip install https://data.pyg.org/whl/torch-2.4.0%2Bcu118/torch_sparse-0.6.18%2Bpt24cu118-cp38-cp38-linux_x86_64.whl
pip install https://data.pyg.org/whl/torch-2.4.0%2Bcu118/torch_cluster-1.6.3%2Bpt24cu118-cp38-cp38-linux_x86_64.whl
pip install torch-geometric==2.6.1
pip install torchmetrics==0.9.3

CPU version

pip install https://download.pytorch.org/whl/cpu/torch-2.4.1%2Bcpu-cp38-cp38-linux_x86_64.whl
pip install https://data.pyg.org/whl/torch-2.4.0%2Bcpu/torch_scatter-2.1.2%2Bpt24cpu-cp38-cp38-linux_x86_64.whl
pip install https://data.pyg.org/whl/torch-2.4.0%2Bcpu/torch_sparse-0.6.18%2Bpt24cpu-cp38-cp38-linux_x86_64.whl
pip install https://data.pyg.org/whl/torch-2.4.0%2Bcpu/torch_cluster-1.6.3%2Bpt24cpu-cp38-cp38-linux_x86_64.whl
pip install torch-geometric==2.6.1
pip install torchmetrics==0.9.3

3. Install scState

The package name on PyPI is scstate:

pip install --upgrade scstate

To install a specific version:

pip install scstate==2.0.0

Although the package is installed from PyPI as scstate, it should be imported in Python as scState:

import scState

4. Install trajectory-related dependencies

If trajectory-related analysis is needed, install the optional trajectory dependencies:

python -m pip install "scstate[trajectory]==0.1.2"

Then install MulticoreTSNE for Palantir:

conda install -c conda-forge multicore-tsne=0.1 -y

Finally, install Palantir:

pip install palantir==1.0.0

5. Add the environment to Jupyter Notebook

pip install ipykernel
python -m ipykernel install --user --name scState --display-name "Python (scState)"

Dependencies

scState was tested under Python 3.8.x.

Main dependencies

The following dependencies are installed by default with:

pip install scstate
  • anndata==0.8.0
  • dill==0.3.4
  • matplotlib==3.5.2
  • numpy==1.22.3
  • pandas==1.4.2
  • scipy==1.10.1
  • seaborn==0.11.2
  • scikit-learn==1.1.2
  • xlwt==1.3.0
  • tqdm==4.64.0
  • scanpy==1.9.1
  • leidenalg==0.8.10
  • ipywidgets==8.0.6

Model-related dependencies

  • torch==2.4.1+cu118 or torch==2.4.1+cpu
  • torch-geometric==2.6.1
  • torchmetrics==0.9.3
  • torch-scatter==2.1.2+pt24cu118 or torch-scatter==2.1.2+pt24cpu
  • torch-sparse==0.6.18+pt24cu118 or torch-sparse==0.6.18+pt24cpu
  • torch-cluster==1.6.3+pt24cu118 or torch-cluster==1.6.3+pt24cpu

Trajectory-related dependencies

  • PhenoGraph==1.5.7
  • fcsparser==0.2.4
  • MulticoreTSNE==0.1
  • palantir==1.0.0

Usage

After installation, scState modules can be imported as follows:

from scState.conv import *
from scState.scState_model import *
from scState.utils import *

License

This project is released under the MIT License.

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

scstate-2.0.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

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

scstate-2.0.0-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file scstate-2.0.0.tar.gz.

File metadata

  • Download URL: scstate-2.0.0.tar.gz
  • Upload date:
  • Size: 17.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.12

File hashes

Hashes for scstate-2.0.0.tar.gz
Algorithm Hash digest
SHA256 822320948a92df260a6ca4707bf698369761d2ec4d1ebfe86b9e61eb7cd885c3
MD5 19cf78772d1d28468e473653eaebbf8b
BLAKE2b-256 e5c2ec82f9938ee245589eaf138f39def7bcae0260ca7dad7926dddd1af92cde

See more details on using hashes here.

File details

Details for the file scstate-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: scstate-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.12

File hashes

Hashes for scstate-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ce8dc0b3e69b8daa88eb659de6b858a5d9ce83447dd66f12ee87f9d18a102d58
MD5 41f8cf257120dd2c57af78bcb853de19
BLAKE2b-256 49bcc8d32009fee8ac2d44067a6b3ec23999bbb483289cef183a0c63d1575628

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