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-3.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-3.0.0-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: scstate-3.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-3.0.0.tar.gz
Algorithm Hash digest
SHA256 b97e5e2b78a8d9344f448a0d04679b83c5cbceabd52d1346049973f05fd56487
MD5 b0080d11be436182b5a627fad88f680e
BLAKE2b-256 9ce6b07155495decf9e7faae108591ed1fa76dbfd3421a5fcc9e09b70dcd81c1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: scstate-3.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-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 77b4050e8a37afaaefbc8d988956f18a862ffab008c70cd1d69fab5162081482
MD5 e29752ada6f055f7bec184a23cd321ee
BLAKE2b-256 d2b144b4a1061b5643045a8ad855594229eafcf3c5a59e3184f86cffefcaefc0

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