Skip to main content

SimSpace: a comprehensive in-silico spatial omics data simulation framework

Project description

SimSpace

SimSpace is a Python framework for simulating spatial omics data with realistic cellular distributions and tissue organization. Designed for benchmarking spatial analysis methods, SimSpace enables generation of synthetic datasets that preserve spatial autocorrelation, cell-cell interactions, and spatial proximities using a Markov Random Field (MRF) model.

SimSpace Workflow

📦 Installation

To install the latest version of SimSpace, we recommend using conda to setup the environment:

git clone https://github.com/TianxiaoNYU/simspace.git
  • Create a conda environment for simspace
cd simspace
conda env create -f environment.yml
conda activate simspace
  • Install simspace from PyPi
pip install simspace

🧬 Optional: Setting Up the R Environment for Omics Simulation

Besides built-in functions, SimSpace also supports external omics profile simulation via R-based tools including scDesign3, SRTsim, and splatter. You can either install these packages manually or use the renv package to recreate the exact R environment used by SimSpace.

Steps:

  1. Ensure that R (version 4.4 or compatible) is installed on your system.
  2. Navigate to the R project folder and restore the environment:
cd simspace/R
Rscript -e 'install.packages("renv"); renv::restore()'

This will install all required R dependencies in a reproducible, isolated environment.

📘 Tutorials

To get started with SimSpace, we provide detailed tutorials covering both reference-based and reference-free simulation modes.

  • Step-by-step tutorials can be found in tutorials.md
  • Executable notebook examples are located in the examples/ directory

These resources walk through how to configure and run simulations as well as visualize outputs.

🚀 Quick Start

Here’s a basic example to simulate a 2D tissue with 3 spatial niches and 8 cell types:

from simspace import util, spatial

# Define simulation parameters
params = util.generate_random_parameters(
    n_group=3,
    n_state=8,
    seed=42)

# Run simulation
sim = util.sim_from_params(
    params,
    shape=(50, 50),    # shape of the simulation grid
    custom_neighbor=spatial.generate_offsets(3, 'manhattan'),
    seed=42
)

# Visualize
sim.plot()

🙋‍♀️ About

Developed by Tianxiao Zhao at NYU Grossman School of Medicine. Should you have any questions, please contact Tianxiao Zhao at Tianxiao.Zhao@nyulangone.org

🔗 References

If you use SimSpace in your work, please cite the work on BioRxiv:

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

simspace-0.2.1.tar.gz (165.4 kB view details)

Uploaded Source

Built Distribution

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

simspace-0.2.1-py3-none-any.whl (169.6 kB view details)

Uploaded Python 3

File details

Details for the file simspace-0.2.1.tar.gz.

File metadata

  • Download URL: simspace-0.2.1.tar.gz
  • Upload date:
  • Size: 165.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for simspace-0.2.1.tar.gz
Algorithm Hash digest
SHA256 b47c49af625033db5028039cde817d24c1dd23123d3d91ff18fe1e7b2cfd2f12
MD5 a1f3c2483397921ec66e6f44e5b31731
BLAKE2b-256 e11317251aab86e550a3432e9b7379522651bf37a903b379f088460a12745398

See more details on using hashes here.

File details

Details for the file simspace-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: simspace-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 169.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.13

File hashes

Hashes for simspace-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b96af7790cb675dc3e1f6f2068febbc8c7026d74a31da9b09f8c5da3a6fb84c1
MD5 cda5b4a01dfab2b7150bff7df0c8e3f9
BLAKE2b-256 66251bc2f097903adc7849ea0a950af58fcad58c9d146a9cb3c267ba5e469c92

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