Adds scATrans and scFair to the ecosystem - #382
Open
leelieber2025 wants to merge 11 commits into
Open
Conversation
Author
|
Hi @scverse — just following up on this PR when you have a moment. Please let me know if you’d like any changes or updates. Thanks so much for your work on this project! |
Author
|
@Zethson Thanks — updated both meta.yaml files for the new schema: controlled-vocabulary tags, plus primary_category and language. CI is green. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Submission 1: scATrans
Name of the tool: scATrans
Short description:
scATrans is a Python package for mechanism-aware analysis of single-cell differential expression. Given spliced and unspliced layers (or mature and nascent layers), it takes a DE-selected gene list and partitions genes into transcription-driven versus stabilization-driven classes using a reference-corrected nascent residual.
It also supports conventional differential expression workflows (no velocity data required) via scanpy, PyDESeq2 pseudobulk, linear mixed models, or optional Memento. Functional enrichment (ORA, GSEA, GO, KEGG) uses bundled gene sets with consistent universe handling, and a set of visualization functions is provided.
How does the package use scverse data structures (please describe in a few sentences):
scATrans is built on AnnData as its core data structure, using the
.layersslot to hold spliced/unspliced (nascent/mature) RNA counts for velocity-based scoring, and interoperates directly with scanpy for standard single-cell preprocessing and DE workflows (with optional scVelo, PyDESeq2, and Memento layered on top).Submission 2: scFair
Name of the tool: scFair
Short description:
scFair is a seamless Python alternative to
scanpy.pp.highly_variable_genesdesigned to improve single-cell HVG selection. It addresses common silent failures in traditional workflows by providing an auto-sizedn_top_genesselection (eliminating the need to guess the optimal gene count) and employing a smart top-k extension to prevent the loss of rare cell-type markers.How does the package use scverse data structures (please describe in a few sentences):
scFair directly operates on
AnnDataobjects, serving as a seamless alternative to standard scanpy preprocessing functions. It reads expression matrices from.Xor.layers, computes fairness-aware gene variability metrics, and writes the feature selection results (such as highly variable boolean flags, dispersions, and rankings) directly into the.varand.unsslots, ensuring 100% compatibility with downstream scverse tools.