scanpy

Standardize single-cell RNA-seq workflows with Scanpy for QC, clustering, and annotation.

13|3|Updated Jun 10, 2026
One-click install
npx skills add https://github.com/tassiovale/claude-code-kit --skill scanpy-tassiovale
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: scanpy
Source: https://github.com/tassiovale/claude-code-kit/tree/main/skills/scanpy
Command: npx skills add https://github.com/tassiovale/claude-code-kit --skill scanpy-tassiovale

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires scanpy, anndata, scipy, numpy, pandas, and includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve?

This Skill addresses the complex and time-consuming process of single-cell RNA-seq analysis by providing a standardized, scalable toolkit for various stages of the analysis.

Core Features & Use Cases

  • Quality Control: Perform automated quality control to filter cells and genes based on various metrics.
  • Normalization: Normalize and preprocess data to ensure consistency across experiments.
  • Dimensionality Reduction: Apply PCA, UMAP, and t-SNE for visualization and clustering.
  • Clustering: Perform Leiden clustering for accurate cell grouping.
  • Marker Gene Identification: Automatically identify marker genes for each cluster.
  • Cell Type Annotation: Annotate cell types based on gene expression.
  • Use Case: When analyzing a single-cell RNA-seq dataset, this Skill provides a complete workflow for quality control, normalization, clustering, and annotation.

Quick Start

To analyze a single-cell RNA-seq dataset using Scanpy, first load the data into an AnnData object and then run the following commands:

sc.read_h5ad('path/to/data.h5ad')
sc.pp.calculate_qc_metrics(adata)
sc.pp.filter_cells(adata, min_genes=200)
sc.pp.filter_genes(adata, min_cells=3)
sc.pp.normalize_total(adata, target_sum=1e4)
sc.pp.log1p(adata)
sc.tl.pca(adata)
sc.tl.umap(adata)
sc.tl.leiden(adata)
sc.tl.rank_genes_groups(adata, 'leiden')
sc.tl.dpt(adata)

Frequently Asked Questions about scanpy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I automate single-cell RNA-seq analysis workflows from quality control to clustering?

To automate single-cell RNA-seq analysis, you can standardize the workflow using Scanpy to handle quality control, normalization, dimensionality reduction, and Leiden clustering. Load your data into an AnnData object to run the complete processing pipeline.

What is the best way to identify marker genes and annotate cell types in scRNA-seq data?

The best way to identify marker genes and annotate cell types in scRNA-seq data is using automated ranking functions on clustered data. Scanpy calculates gene expression ranks for Leiden clusters, enabling accurate cell type annotation based on those markers.

Do I need Python 3.12 and AnnData to perform dimensionality reduction on single-cell RNA-seq datasets?

Yes, you need Python 3.12+ and AnnData to perform dimensionality reduction on single-cell RNA-seq datasets. These dependencies are required to load your data into an AnnData object and apply PCA, UMAP, and t-SNE for visualization.

Can I use UMAP and t-SNE for visualization in a single-cell RNA-seq analysis pipeline?

Yes, you can use UMAP and t-SNE for visualization in a single-cell RNA-seq analysis pipeline. Scanpy applies these dimensionality reduction techniques alongside PCA to prepare your normalized data for accurate Leiden clustering.

How does quality control filtering work for single-cell RNA-seq datasets?

Quality control filtering for single-cell RNA-seq datasets works by removing low-quality cells and genes based on calculated metrics. Scanpy filters cells by minimum gene counts and genes by minimum cell counts to ensure experimental consistency.

What are the limitations of using Scanpy for large-scale single-cell RNA-seq analysis?

Limitations of using Scanpy for large-scale single-cell RNA-seq analysis include its strict dependency on Python 3.12+, AnnData, and SciPy. Processing extremely large datasets requires sufficient memory to handle the NumPy and Pandas array operations.