Skip to main content

PyPI package for multi-task label transfer from single-cell reference 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.9.tar.gz (25.4 kB view details)

Uploaded Source

Built Distribution

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

spacetree-0.1.9-py3-none-any.whl (25.4 kB view details)

Uploaded Python 3

File details

Details for the file spacetree-0.1.9.tar.gz.

File metadata

  • Download URL: spacetree-0.1.9.tar.gz
  • Upload date:
  • Size: 25.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for spacetree-0.1.9.tar.gz
Algorithm Hash digest
SHA256 bdb8b432a2d227099265a89761b279aed800d68ca88d15b40d96b8a0c3cd8598
MD5 c9027b1ac95cd7e42faf94a058f92834
BLAKE2b-256 aa061ab1c5c1534d7b81862133e1c801fd6b50dfbe13e386f67a3cbd998a42d2

See more details on using hashes here.

File details

Details for the file spacetree-0.1.9-py3-none-any.whl.

File metadata

  • Download URL: spacetree-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 25.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.20

File hashes

Hashes for spacetree-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 18eb1949ba1acd9f9c5dda399d7d240ccc9e4ba27f95dbade6c53ec35ed82a35
MD5 d3b437c66cab92c32dba6b912126a6c3
BLAKE2b-256 43f2d6ba6cb33f9597f4feca092374f9bad58383a4bc5376650b5ca08cdfdd8e

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