Skip to main content

scAtlasPy logo

scAtlasPy

A scalable Python platform for atlas-scale single-cell omics analysis beyond in-memory limits.

scAtlasPy is a Python platform for analyzing cell atlases that are too large to fit in memory. It extends familiar single-cell analysis workflows to atlas-scale datasets, supporting preprocessing, dimensionality reduction, clustering, visualization, marker analysis, and machine learning within a unified on-disk environment.

At the center of scAtlasPy is a persistent .sasql atlas database. Expression matrices, metadata, embeddings, and analysis results remain on disk, while analysis functions retrieve only the cells, genes, or minibatches needed for the current operation.

Installation

Install the released package from PyPI:

pip install scatlaspy

Distilled UMAP and distilled Louvain clustering use PyTorch. Install torch in the same environment if you plan to run these tools:

pip install torch

For CUDA, MPS, or other accelerator-specific PyTorch builds, follow the installation command recommended for your hardware by the PyTorch project.

Quick Start

import scatlaspy as sap

atlas = sap.Atlas("pbmc.sasql")
atlas.load_h5ad("pbmc.h5ad", load_type="random")

sap.pp.calculate_qc_metrics(atlas)
sap.pp.filter_cells(atlas, min_genes=200)
sap.pp.filter_genes(atlas, min_cells=3)
sap.pp.normalize_and_log1p(atlas)
sap.pp.highly_variable_genes(atlas, n_top_genes=2000)

# Use mode="center_only" if PCA should preserve gene-level variance differences.
sap.pp.scale(atlas)

atlas.build_read_index(
    cell_condition="filter_cells",
    gene_condition="filter_genes",
    use_hvg=True,
    use_data="data_scale",
)

sap.tl.pca(atlas)
sap.tl.umap(atlas)
sap.tl.graph_clustering(atlas)
sap.pl.umap(atlas, color="scatlas_cluster")

atlas.close()

What scAtlasPy Enables

  • Full-resolution atlas workflows: run QC, filtering, normalization, HVG, PCA, clustering, UMAP, marker ranking, and visualization without loading the full matrix into memory.
  • High-throughput data retrieval: stream sparse or dense minibatches from disk-resident atlases for downstream algorithms and machine-learning models.
  • Persistent analysis state: store metadata, transformed expression values, embeddings, loadings, clusters, marker statistics, and plots inputs in one atlas database.
  • Interoperability: import from AnnData-compatible .h5ad files and export selected results back to the broader single-cell ecosystem.
  • Extensibility: build new atlas-scale methods on top of stable metadata, SQL, sparse retrieval, dense minibatch, and result-writing interfaces.

Documentation

Citation

If you use scAtlasPy in academic work, please cite the project repository for now. A formal citation will be added when a paper or archived release is available.

License

scAtlasPy is released under the BSD 3-Clause License.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scatlaspy-1.0.0.tar.gz (199.2 kB view details)

Uploaded Source

Built Distribution

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

scatlaspy-1.0.0-py3-none-any.whl (211.7 kB view details)

Uploaded Python 3

File details

Details for the file scatlaspy-1.0.0.tar.gz.

File metadata

  • Download URL: scatlaspy-1.0.0.tar.gz
  • Upload date:
  • Size: 199.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for scatlaspy-1.0.0.tar.gz
Algorithm Hash digest
SHA256 767619b2419c659aa7fc9af1033b04e3feac4792a4f580209f64481937810533
MD5 a2abf298b4043126744be065a083f3f9
BLAKE2b-256 598316c26aab1e50ee09bbe3a707af352273b075bf2a36475b89db0a854c9629

See more details on using hashes here.

File details

Details for the file scatlaspy-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: scatlaspy-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 211.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for scatlaspy-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b4ba64a34e053dd4c2b202980a8729b6320d2319adb863fe396b497e532e2fc1
MD5 dd55e489c6c2657e79aaf5a79392a1cd
BLAKE2b-256 dd1d13b6776e23e435320096337709fe707847847f67ae6eb2bbc6141520ae00

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

0.0.1

2 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