single-cell-rna-qc

Calculate single-cell RNA-seq QC metrics and filter cells with MAD outlier detection.

112|26|Updated Jan 25, 2026
One-click install
npx skills add https://github.com/Wide-Moat/open-computer-use --skill single-cell-rna-qc-wide-moat
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: single-cell-rna-qc
Source: https://github.com/Wide-Moat/open-computer-use/tree/main/skills/examples/single-cell-rna-qc
Command: npx skills add https://github.com/Wide-Moat/open-computer-use --skill single-cell-rna-qc-wide-moat

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

This Skill solves the challenge of identifying low-quality cells in single-cell RNA-seq datasets and producing clear diagnostics so you can proceed confidently to downstream analysis.

Core Features & Use Cases

  • Performs scverse-style QC metrics (counts, detected genes, mitochondrial/ribosomal/hemoglobin fractions) for .h5ad and 10X .h5 inputs.
  • Filters cells using MAD-based outlier detection with an additional hard mitochondrial percentage cutoff to remove stressed or dying cells.
  • Generates comprehensive before/after visualizations plus filtered output files suitable for immediate downstream workflows.

Use case example: You receive an .h5ad dataset and want to filter out likely poor-quality cells while keeping rare populations, then review QC plots to verify the filtering is sensible.

Quick Start

Run single-cell RNA-seq QC on your input file by calling: python3 scripts/qc_analysis.py input.h5ad

Frequently Asked Questions about single-cell-rna-qc

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

FAQPage Schema
How do I perform quality control on single-cell RNA-seq data using MAD outlier detection?

Single-cell RNA-seq QC applies MAD outlier detection to flag low-quality cells by counts, detected genes, and mitochondrial fractions. A hard mitochondrial percentage cutoff removes stressed cells, while customizable thresholds preserve rare populations.

How do I filter low-quality cells from an h5ad file using scanpy?

Filtering low-quality cells from an h5ad file is done by running a provided Python script using scanpy and anndata. It calculates scverse-style QC metrics, detects outliers, filters poor-quality cells, and outputs before/after visualizations plus a filtered h5ad file.

Does this single-cell RNA-seq QC workflow support 10X .h5 input files?

Yes, the QC workflow supports both standard .h5ad files and 10X .h5 inputs. It calculates counts, detected genes, and mitochondrial/ribosomal/hemoglobin fractions across both formats using scanpy and anndata.

What is the best way to keep rare cell populations during scRNA-seq quality filtering?

To keep rare cell populations during scRNA-seq quality filtering, apply MAD-based outlier detection rather than simple percentage cutoffs. This identifies poor-quality cells by deviation from median metrics while applying a hard mitochondrial percentage cutoff to remove dying cells.

What QC metrics are calculated for single-cell RNA-seq data before filtering?

Calculated QC metrics for single-cell RNA-seq data include total counts, detected genes, and mitochondrial, ribosomal, and hemoglobin fractions. These metrics are computed using scanpy and anndata to evaluate cell quality before applying MAD outlier filters.

Why use MAD-based outlier detection instead of fixed thresholds for scRNA-seq QC?

MAD-based outlier detection adapts to dataset-specific distributions, making it more robust than fixed thresholds for scRNA-seq QC. It identifies outliers based on median absolute deviation across QC metrics, while an additional hard mitochondrial cutoff targets stressed or dying cells.