omicverse-single-cell-cnmf-program-discovery

Run consensus non-negative matrix factorization on single-cell AnnData to discover gene programs.

13|2|Updated Apr 5, 2026
One-click install
npx skills add https://github.com/Starlitnightly/omicverse-skills --skill omicverse-single-cell-cnmf-program-discovery
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: omicverse-single-cell-cnmf-program-discovery
Source: https://github.com/Starlitnightly/omicverse-skills/tree/main/src/omicverse_skills/skills/single-cell-cnmf-program-discovery
Command: npx skills add https://github.com/Starlitnightly/omicverse-skills --skill omicverse-single-cell-cnmf-program-discovery

SYSTEM DOCUMENTATION & REQUIREMENTS

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

What problem does it solve?

Turn an ephemeral notebook cNMF workflow into a reproducible, triggerable job that fits consensus non-negative matrix factorizations on single-cell AnnData to discover gene expression programs and produce program usages or hard cluster labels.

Core Features & Use Cases

  • Fits consensus NMF across a user-provided grid of component ranks and combines replicate factorizations into consensus programs.
  • Provides both direct max-usage labeling and classifier-derived hard labels via an RFC path, with explicit CPU vs GPU and single-worker vs multi-worker branches.
  • Includes validation and smoke-testing patterns, writable output persistence, and guidance for selecting K and density thresholds; ideal for converting notebook cNMF sections into reusable pipelines for single-cell program discovery.

Quick Start

Run the skill on a preprocessed AnnData to compute consensus programs, load normalized usages, and optionally write hard or RFC-derived cluster labels.

Frequently Asked Questions about omicverse-single-cell-cnmf-program-discovery

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

FAQPage Schema
How do I run consensus non-negative matrix factorization on single-cell RNA-seq data?

Consensus non-negative matrix factorization discovers gene expression programs by fitting cNMF across a grid of component ranks on a preprocessed AnnData object, then combining replicate factorizations into consensus program usages and cluster labels.

What is cNMF program discovery used for in single-cell analysis?

cNMF program discovery identifies consensus gene expression programs from single-cell AnnData inputs, converting transient notebook workflows into reproducible pipelines that output normalized usages and hard or RFC-derived cluster labels.

Do I need a GPU to run cNMF for single-cell program discovery?

A GPU is not required to run cNMF for single-cell program discovery, as the workflow provides explicit CPU and GPU execution branches alongside single-worker and multi-worker configurations to fit available computing resources.

What input format is required for consensus NMF gene program discovery?

Consensus NMF gene program discovery requires a preprocessed single-cell RNA-seq AnnData object with normalized data and optional PCA, plus a writable output directory to persist intermediate factorization files and consensus combine step results.

How do I select the optimal K rank for consensus NMF on AnnData?

To select the optimal K rank for consensus NMF on AnnData, fit factorizations across a user-provided grid of component ranks, then use the included selection guidance to evaluate K and density thresholds for stable consensus program generation.

What is the difference between direct max-usage labeling and RFC-derived labels in cNMF?

Direct max-usage labeling assigns cells to programs based on highest usage values, while RFC-derived labels use a random forest classifier path to generate hard cluster labels, offering a classifier-based alternative within the cNMF workflow.