Skip to main content

sopa_logo

Spatial omics pipeline and analysis

PyPI Downloads Docs Build License uv Ruff

Built on top of SpatialData, Sopa enables processing and analyses of spatial omics data with single-cell resolution (spatial transcriptomics or multiplex imaging data) using a standard data structure and output. We currently support the following technologies: Xenium, Visium HD, MERSCOPE, CosMx, PhenoCycler, MACSima, Molecular Cartography, and others. Sopa was designed for generability and low memory consumption on large images (scales to 1TB+ images).

[!NOTE] You may also be interested in Novae, developed by the same authors, now published in Nature Methods 🎉

Documentation

Check Sopa's documentation to get started. It contains installation explanations, CLI/API details, and tutorials.

Overview

The following illustration describes the main steps of sopa:

sopa_overview

Installation

Sopa can be installed from PyPI on all OS, for any Python version >=3.11. On a new environment, run the following command:

pip install sopa

[!NOTE] See this installation section for more details about extras and other installations modes.

Features

Sopa comes in four different flavours, each corresponding to a different use case:

  • API: use directly sopa as a Python package for complete flexibility and customization.
  • Snakemake pipeline: choose a config, and run our pipeline on your spatial data in a couple of minutes.
  • nf-core/sopa: run Sopa with Nextflow (see this repo and the corresponding usage guide). Great for Docker users.
  • CLI: use our command-line-interface for prototyping quickly your own pipeline (advanced users).

API

Below is a minimal example of API usage. For a complete API description, please refer to the documentation.

import sopa

sdata = sopa.io.xenium("path/to/data") # reading Xenium data

sopa.make_image_patches(sdata) # creating overlapping patches
sopa.segmentation.cellpose(sdata, "DAPI", diameter=30) # running cellpose segmentation
sopa.aggregate(sdata) # counting the transcripts inside the cells

Snakemake pipeline

Clone our repository, choose a config here (or create your own), and execute our pipeline locally or on a high-performance cluster:

git clone https://github.com/prism-oncology/sopa.git
cd sopa/workflow
snakemake --configfile=/path/to/yaml_config --config data_path=/path/to/data_directory --cores 1 --use-conda

For more details on snakemake configuration and how to properly setup your environments, please refer to the documentation.

CLI

Below are examples of commands that can be run with the sopa CLI. For a complete description of the CLI, please refer to the documentation.

> sopa --help # show command names and arguments
> sopa convert merscope_directory --technology merscope # read some data
> sopa patchify image merscope_directory.zarr # make patches for low-memory segmentation
> sopa segmentation cellpose merscope_directory.zarr --diameter 60 --channels DAPI # segmentation
> sopa resolve cellpose merscope_directory.zarr # resolve segmentation conflicts at boundaries
> sopa aggregate merscope_directory.zarr --average-intensities # transcripts/channels aggregation
> sopa explorer write merscope_directory.zarr # convert for interactive vizualisation

Cite us

Our article is published in Nature Communications. You can cite Sopa as below:

Blampey, Q., Mulder, K., Gardet, M. et al. Sopa: a technology-invariant pipeline for analyses of image-based spatial omics.
Nat Commun 15, 4981 (2024). https://doi.org/10.1038/s41467-024-48981-z

Metadata

Release files for sopa 2.2.11

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sopa 2.2.11
File Size Uploaded
sopa-2.2.11.tar.gz 141.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for sopa 2.2.11
File Interpreter ABI Platform
sopa-2.2.11-py3-none-any.whl Python 3 none any Details

Total release size: 328.5 kB

Release files / sopa-2.2.11.tar.gz

Download URL sopa-2.2.11.tar.gz
Size 141.9 kB
Tags Source
SHA-256 checksum
How to use checksums
c2e9cd9a8440cbfe8258bb40a2a7e053b4c7679382c66af6704b3c508f71f0e2
BLAKE2b-256 checksum
How to use checksums
a0952c8f07bf9716316314bf76fed3938a3fd15c5d502d90a98c37448468b309
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.20

Release files / sopa-2.2.11-py3-none-any.whl

Download URL sopa-2.2.11-py3-none-any.whl
Size 186.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
eb8cae729b714c0d3ad225e52dfb71a42e374ca74d05c8308c9316b96e153f73
BLAKE2b-256 checksum
How to use checksums
31fb4d209f10d89033e0c2c2e8241e5775fa63e3a18e21c7061ac14067612f1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.5.20

Release history Release notifications | RSS feed

This release

2.2.11 This release

2 release files

2.2.9

2 release files

2.2.8

2 release files

2.2.7

2 release files

2.2.6

2 release files

2.2.5

2 release files

2.2.4

2 release files

2.2.3

2 release files

2.2.2

2 release files

2.2.1

2 release files

2.2.0

2 release files

2.1.11

2 release files

2.1.9

2 release files

2.1.8

2 release files

2.1.7

2 release files

2.1.6

2 release files

2.1.5

2 release files

2.1.4

2 release files

2.1.3

2 release files

2.1.2

2 release files

2.1.1

2 release files

2.1.0

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.14

2 release files

1.0.13

2 release files

1.0.12

2 release files

1.0.11

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.2.1

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page