# scverse/scanpy

Single-cell analysis in Python. Scales to >100M cells.

Repository: https://github.com/scverse/scanpy
Canonical: https://ross.abutalabs.com/products/scanpy
Homepage: https://scanpy.scverse.org
Language: Python
License: BSD-3-Clause
License Family: permissive
Topics: machine-learning, data-science, visualize-data, transcriptomics, bioinformatics, scanpy, anndata, python, scverse
Last push: 2026-08-21T15:14:43+00:00

## Health v2 (maintenance only)
Score: 93/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 98, release rhythm 82, longevity 100
- inputs: {"age_days": 3503, "days_push": 12, "days_rel": 40, "gap_med": 58, "n_releases_24m": 12}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2548, forks 765 (observed 2026-08-28T04:07:00.378776+00:00)

## What it is
Scanpy is a scalable Python toolkit for analyzing single-cell gene expression data, built alongside the anndata data structure. It provides preprocessing, visualization, clustering, trajectory inference, and differential expression testing, efficiently handling datasets of over a million cells with experimental Dask support for out-of-memory data.

## Use cases
- analyze single-cell RNA-seq gene expression data in Python
- cluster and visualize millions of single cells
- perform trajectory inference on single-cell datasets
- run differential expression testing between cell groups
- preprocess and quality-control single-cell count matrices
- analyze single-cell datasets too large to fit in memory
- build scRNA-seq analysis pipelines with anndata

## When to choose
- you need a mature, widely adopted Python toolkit for single-cell transcriptomics
- your datasets scale to hundreds of thousands or millions of cells
- you want preprocessing, clustering, visualization, and differential expression in one package
- you prefer Python over R-based single-cell tools like Seurat
- you want GPU-accelerated workflows via compatible ecosystem tools like rapids-singlecell

## When to avoid
- you need bulk RNA-seq or non-single-cell genomics analysis
- you require a stable internal API - only the documented public API is supported
- you need out-of-memory processing at scale - Dask compatibility is still experimental
- your workflow is R-centric and you prefer Bioconductor ecosystems

## Facets
- artifact type: library
- maturity: stable
- function: data-science, machine-learning, data-visualization, analytics
- domain: bioinformatics, data-science, machine-learning, data-visualization
- platform: python, cross-platform
- tags: single-cell, transcriptomics, genomics, anndata, clustering, trajectory-inference, differential-expression, scverse, dask, bioinformatics, gpu

## Member repositories
- scverse/scanpy (main) score 93

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:07:00.378776+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:24:34.021018+00:00, confidence not recorded.
  - readme: https://github.com/scverse/scanpy (fetched 2026-08-28T04:07:00.378776+00:00, sha 0fff44b44915)
  - homepage: https://scanpy.scverse.org (fetched 2026-08-29T10:06:49.583260+00:00, sha 8693e0b62fdc)
  - site_page: https://scanpy.scverse.org/en/stable/installation.html (fetched 2026-08-29T10:06:49.585743+00:00, sha c3f0aa4c6e35)
  - site_page: https://scanpy.scverse.org/en/stable/dev/documentation.html (fetched 2026-08-29T10:06:49.587480+00:00, sha f38b9df0cebc)
  - site_page: https://scverse.org/about/roles (fetched 2026-08-29T10:06:49.589270+00:00, sha d2e0a43e216d)
  - registry_pypi: https://pypi.org/pypi/scanpy/json (fetched 2026-08-29T10:06:49.591066+00:00, sha 9d5b068408f0)
- Data as of 2026-08-30T08:39:29.467469+00:00.
