scanpy

Run end-to-end single-cell RNA-seq analysis with QC, clustering, and visualization.

783|65|Updated Feb 27, 2026
One-click install
npx skills add https://github.com/LeonChaoX/qinyan-academic-skills --skill scanpy-leonchaox
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: scanpy
Source: https://github.com/LeonChaoX/qinyan-academic-skills/tree/main/skills/05-%E7%94%9F%E7%89%A9%E4%BF%A1%E6%81%AF%E4%B8%8E%E5%9F%BA%E5%9B%A0%E7%BB%84%E5%AD%A6/scanpy
Command: npx skills add https://github.com/LeonChaoX/qinyan-academic-skills --skill scanpy-leonchaox

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve?

Scanpy solves the problem of turning raw single-cell RNA-seq count matrices into interpretable cell clusters, marker genes, and publication-ready visualizations through a standard end-to-end workflow.

Core Features & Use Cases

  • Quality control and filtering: Computes mitochondrial and other QC metrics, visualizes QC, and filters low-quality cells/genes.
  • Normalization and dimensionality reduction: Performs normalization, log transform, HVG selection, scaling/regression, and embeddings via PCA/UMAP/t-SNE.
  • Clustering, markers, and annotation: Runs Leiden clustering, ranks marker genes, supports cell type annotation, and enables trajectory/pseudotime analyses.
  • Use Case: Analyze an exploratory scRNA-seq dataset by generating UMAP embeddings, identifying cluster marker genes, and mapping clusters to cell types for downstream interpretation.

Quick Start

Use the scanpy skill to analyze an attached single-cell dataset by running the standard workflow from QC through clustering, marker gene discovery, and visualization.

Frequently Asked Questions about scanpy

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

FAQPage Schema
How do I run end-to-end scRNA-seq analysis from raw counts to cell clusters?

End-to-end scRNA-seq analysis runs standard preprocessing steps from QC through normalization, HVG selection, and scaling, then generates UMAP embeddings and Leiden clusters to identify cell types. The workflow processes AnnData-based datasets to produce publication-ready figures and cluster annotations.

What is the best way to identify marker genes for single-cell clusters?

To identify marker genes for single-cell clusters, run Leiden clustering followed by the rank_genes_groups function to rank differentially expressed genes per cluster. This workflow computes annotations and maps clusters to cell types for downstream biological interpretation.

Does this workflow support 10x-derived scRNA-seq datasets for UMAP visualization?

Yes, this scRNA-seq workflow supports 10x-derived inputs stored in AnnData-compatible formats. It computes mitochondrial QC metrics, executes standard preprocessing, and runs sc.tl and sc.pl functions including neighbors, UMAP, Leiden, and rank_genes_groups for visualization.

Can I use this pipeline to compute mitochondrial QC metrics and filter low-quality cells?

Yes, you can compute mitochondrial QC metrics and filter low-quality cells using this pipeline. The workflow visualizes QC distributions and applies filtering thresholds to remove low-quality cells and genes before proceeding to normalization and dimensionality reduction.

What normalization steps are needed before Leiden clustering on an AnnData dataset?

Before Leiden clustering on an AnnData dataset, required normalization steps include log transformation, highly variable gene selection, scaling, and regression. The workflow then computes PCA embeddings and neighbor graphs to enable the Leiden clustering algorithm.

When should I not use an exploratory scRNA-seq pipeline for my dataset?

An exploratory scRNA-seq pipeline is not suited for non-AnnData-compatible data or workflows requiring non-standard preprocessing outside of standard QC, normalization, and clustering steps. It is designed for exploratory analysis rather than specialized analyses deviating from standard sc.tl and sc.pl functions.