Skip to main content

PyPI package for multi-task label transfer from single-cell refrence data to spatial data

Project description

spacetree logo

spaceTree: Deciphering Tumor Microenvironments by joint modeling of cell states and genotype-phenotype relationships in spatial omics data

spaceTree jointly models spatially smooth cell type- and clonal state composition. spaceTree employs Graph Attention mechanisms, capturing information from spatially close regions when reference mapping falls short, enhancing both interpretation and quantitative accuracy.

A significant merit of spaceTree is its technology-agnostic nature, allowing clone-mapping in sequencing- and imaging-based assays. The model outputs can be used to characterize spatial niches that have consistent cell type and clone composition.

spacetree schema

Overview of the spatial mapping approach and the workflow enabled by spaceTree.From left to right: spaceTree requirs as input reference (scRNA-seq) and spatial count matrices as well as labels that need to be transfered. The labels can be descrete, continious or hierachical. The model outputs a spatial mapping of the labels and the cell type (compositions in case of Visium) of the spatial regions.

Usage and Tutorials

Installation

pytorch & pytorch geometric dependencies

SpaceTree reles on pytorch,pytorch geometric and pyg-lib libraries for GNNs and efficient graph sampling routines. It was develoed and tested with pytorch==2.0.1, torch-geometric==2.5.0 and pyg-lib==0.2.0+pt20cu118. We recommend to use the same versions, when possible, otherwise just go with the ones that are compatable with your CUDA version.

To install versions compatible with your CUDA version, please visit the offical documentation of pytorch (1), pytorch geometric (2) and pyg-lib (3) and complete the installations in that order.

Please note, that access to GPU is adviced, but not nessesary, especially if the data size is not too large (i.e. for Visium HD we strongly recommend to use GPU).

Example installation routine

To demonstrate the logic, here is an example installation for MacOS 14 without CUDA (CPU-only) and Python 3.10 (if that is not your desired configuration, please do not adjust the commands yourself, but refer to the official documentation of the libraries, because syntax is platform dependent and some versions might be not compatable with each other):

conda create -y -n spacetree_env python=3.10
conda activate spacetree_env
conda install pytorch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 -c pytorch
pip install torch_geometric
pip install pyg_lib -f https://data.pyg.org/whl/torch-2.3.0+cpu.html 
#test the installation
python -c "import torch_geometric; print(torch_geometric.typing.WITH_PYG_LIB)"
#TRUE

If the output is TRUE, then the installation was successful. If not, please check the error message and try to resolve the issue based on the pytorch, pytorch geometric and pyg-lib documentation.

spaceTree Installation

Once you completed the installation of the dependencies, you can install spaceTreeusing pip or from source.

Installation with pip:

conda activate spacetree_env
pip install spaceTree

Installation from source:

conda activate spacetree_env
git clone https://github.com/PMBio/spaceTree.git
# cd in the spaceTree directory
cd spaceTree
pip install .

Documentation, Tutorials and Examples

Check out our tutorials and documentation to get started with spaceTree here.

Citation

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

spaceTree-0.1.6.tar.gz (25.0 kB view details)

Uploaded Source

Built Distribution

spaceTree-0.1.6-py3-none-any.whl (25.3 kB view details)

Uploaded Python 3

File details

Details for the file spaceTree-0.1.6.tar.gz.

File metadata

  • Download URL: spaceTree-0.1.6.tar.gz
  • Upload date:
  • Size: 25.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.14

File hashes

Hashes for spaceTree-0.1.6.tar.gz
Algorithm Hash digest
SHA256 79316249379d09a40c2778fcbd34d2bc7d2bb9bd15fe435e9877bbf8f04abcba
MD5 27af0d9f268b229949a0e926495cf045
BLAKE2b-256 44bd13196c3626fe9aab1717f7710175a25ddcca2da32b0aa427eae0fae83d7f

See more details on using hashes here.

File details

Details for the file spaceTree-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: spaceTree-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 25.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.14

File hashes

Hashes for spaceTree-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 b5f3d8ad34b604a832d41654fa5129ba1673d57e85b20843a1c2adfc1667584d
MD5 d23c4bd1482fccef1465caea42312570
BLAKE2b-256 cff4780b97bcb85a4fc26fa4659b2261e727c857058580a400f1807bc25fd21b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page