bulkrna-batch-correcti…
Load when correcting batch effects in bulk expression using R sva ComBat or the legacy Python parametric approximation. Skip…
Load when computing two-group differential protein abundance (group2 vs group1, log2FC +
$ npx -y skills add tiangzlab/omicsclaw --skill proteomics-de --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/proteomics-deContext preview
The summary Claude sees to decide when to auto-load this skill.
Load when computing two-group differential protein abundance (group2 vs group1, log2FC +
name: proteomics-de description: Load when computing two-group differential protein abundance (group2 vs group1, log2FC + p-value + BH-adjusted FDR) via Welch t-test, equal-variance t-test, or Mann-Whitney on a wide protein × sample CSV. Skip when you need multi-condition DE (run pairwise contrasts manually); label-based TMT linear-mixed models. trigger: differential abundance, protein expression, MSstats, limma, volcano tags: - proteomics - differential-expression - ttest - welch - mann-whitney - bh-fdr
ttest is the CLI default; welch and mann_whitney are alternatives. Groups default to the first and second half of columns. Use existing search-engine tables; this skill does not search raw spectra.
from skills._sdk.notebook import load_skill, write_output
library = load_skill('proteomics-de')
data = library.demo_data(random_state=42)
result = library.differential_abundance(data)
write_output(result, 'tables/differential_abundance.csv')For real data, use `read_input` and pass any `read_table` helper as `reader=`. The executable `examples/example_step.py` also checks the result and writes a Figure.
<!-- api:begin generated from _api.py; regenerate with run.py api <skill dir> --write -->
Compare groups and return a new table with group2-minus-group1 log2 fold changes.
:param data: Protein-indexed, sample-column linear intensities; nonpositive values are missing. :param group1: First group columns; None uses the first half as in the CLI. :param group2: Second group columns; None uses the second half as in the CLI. :param method: CLI default ttest; welch uses unequal variance and mann_whitney tests ranks. :returns: Per-protein statistics and BH-adjusted p values. :raises ValueError: Groups overlap, are empty, or the protein index is not unique.
Select significant proteins from an existing comparison.
:param results: Differential abundance results with padj and log2fc. :param alpha: CLI default 0.05; strict upper bound on BH-adjusted p values. :param log2fc_threshold: CLI default 0 disables the absolute fold-change filter. :returns: A new table retaining selected rows. :raises ValueError: Thresholds are outside their allowed ranges.
Read comparison diagnostics.
:param table: Output of differential_abundance. :param keep: True preserves attrs; False removes diagnostics. :returns: A separate diagnostic dictionary. :raises TypeError: The input is not a DataFrame.
Plot log2 fold change against adjusted significance.
:param results: Differential abundance results. :returns: A matplotlib Figure without writing files. :raises KeyError: log2fc or padj is absent.
Generate synthetic intensities with two ordered groups.
:param random_state: CLI seed 42; change for another simulation. :returns: Protein rows and five control then five treatment columns. :raises ValueError: The seed is invalid.
<!-- api:end -->
ttest is the CLI default; welch and mann_whitney are alternatives. Groups default to the first and second half of columns. Functions return new DataFrames. `run_info(result)` reads diagnostic attrs; use `keep=False` before serialization when those attrs are not needed.
The CLI reads CSV tables and writes:
Functions return data and Figures without writing files. Steps own their outputs. Demo mode also writes its synthetic input when the original CLI used a file.
python skills/proteomics/proteomics-de/proteomics_de.py --demo --output /tmp/proteomics_de
For real input replace `--demo` with `--input <table>`.
`numpy`, `pandas`, `matplotlib`, `scipy`
Conversational & memory-enabled AI research partner for multi-omics analysis. CLI + Desktop App (installers in Releases). From biological idea to full research paper.
Load when correcting batch effects in bulk expression using R sva ComBat or the legacy Python parametric approximation. Skip…
Load when discovering bulk gene co-expression modules and hub genes with R WGCNA. Skip direct expression contrasts (use…
Load when comparing gene expression between two conditions in bulk RNA-seq count data. Skip
Load when estimating cell-type proportions in bulk RNA-seq samples from a single-cell or
Load when running pathway / GO term enrichment on a bulk RNA-seq DE result list. Skip when
Load when converting Ensembl, Entrez or symbol IDs in a bulk RNA count matrix using an explicit mapping or a small human demo…