single-cellfate-analysis_skill

This skill identifies pseudotime-associated genes driving lineage decisions by adaptive ridge regression and Mellon-based density scoring.
  • Python

866

GitHub Stars

2

Bundled Files

2 months ago

Catalog Refreshed

3 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill starlitnightly/omicverse --skill single-cellfate-analysis

  • reference.md3.7 KB
  • SKILL.md8.6 KB

Overview

This skill implements CellFateGenie: an end-to-end workflow to discover pseudotime-associated and lineage-driving genes using adaptive threshold ridge regression and manifold density scoring. It combines Adaptive Threshold Regression (ATR) for compact gene selection with Mellon-based low-density detection to prioritize fate-driving genes along trajectories. Use it after you have computed pseudotime for single-cell or bulk trajectory analyses.

How this skill works

First, a ridge regression model is fit to predict pseudotime from gene expression, producing gene coefficients and baseline fit metrics. ATR then iteratively removes low-coefficient genes while monitoring R² to find the smallest gene set that preserves fit. Optionally, Mellon density estimation on a diffusion manifold detects low-density transition regions, and a lineage_score routine computes lineage-specific expression variability to flag fate-driving genes.

When to use it

  • You have pseudotime values computed (Palantir, VIA, DPT, etc.) and want genes correlated with progression.
  • You need a compact set of genes that explains pseudotime with minimal loss of model fit.
  • You want to find genes specifically driving a particular lineage or branch of a trajectory.
  • Your dataset is single-cell or bulk RNA-seq where log-normalized expression is available.
  • You plan to combine trajectory results with downstream visualization or gene-set analysis.

Best practices

  • Ensure pseudotime exists in adata.obs and contains no NaNs before initializing Fate.
  • Run HVG selection and PCA (X_pca in adata.obsm) beforehand for more stable results.
  • Install mellon (pip install mellon) before running low_density(); otherwise skip density steps.
  • Tune ATR 'flux' and 'stop' to balance feature parsimony and R² preservation (lower flux keeps more genes).
  • Use data augmentation when pseudotime estimates are noisy (jitter or expression noise options).
  • If GPU memory is limited, force CPU or accept automatic fallback to sklearn Ridge.

Example use cases

  • Identify top pseudotime-associated genes driving erythroid differentiation from Palantir outputs.
  • Filter a genome-wide model to a parsimonious gene set that maintains high R² with ATR.
  • Locate low-density transition regions to time branch commitment events using Mellon.
  • Score and rank genes that vary specifically in a user-defined lineage (cluster list).
  • Apply the same pipeline to scATAC peak counts via atac_init and get_related_peak.

FAQ

low_density() will fail; ATR and model fitting still work. Install mellon with pip install mellon to enable density-based steps.

How do I choose the ATR flux parameter?

flux controls allowed R² drop from the maximum. Lower flux preserves more genes (safer); higher flux yields a smaller gene set. Start with default 0.01 and adjust based on desired parsimony.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational