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-4.0.0.tar.gz (17.3 kB view details)

Uploaded Source

Built Distribution

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

scstate-4.0.0-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: scstate-4.0.0.tar.gz
  • Upload date:
  • Size: 17.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.20

File hashes

Hashes for scstate-4.0.0.tar.gz
Algorithm Hash digest
SHA256 b8a934504d1b383964d9b4e68f2e8c33a712a0b05735f540c5f63751b2edb9c5
MD5 eafce1875fbe1b89515f8d45c8897de3
BLAKE2b-256 00cb1eb4cc5c3ba9677320c1f94d47af8c467a8a7620c0a823007eabd5ada487

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scstate-4.0.0-py3-none-any.whl
  • Upload date:
  • Size: 16.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.8.20

File hashes

Hashes for scstate-4.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6aeb535ed9c5406e14b1b2a84b320893087a5e9b220e90b969971511a7131501
MD5 ea394a4b5d1452601c59ab677fae61a4
BLAKE2b-256 63bb6019a463a9ae5e7e487e94276eda1a95cfc2ff4729d0fd44bc7075e44d90

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