bulkrna-batch-correcti…
Load when correcting batch effects in bulk expression using R sva ComBat or the legacy Python parametric approximation. Skip…
Load when calling CNV segments via CBS-style segmentation on a bin-level log2-ratio CSV from
$ npx -y skills add tiangzlab/omicsclaw --skill genomics-cnv-calling --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/genomics-cnv-callingContext preview
The summary Claude sees to decide when to auto-load this skill.
Load when calling CNV segments via CBS-style segmentation on a bin-level log2-ratio CSV from
name: genomics-cnv-calling description: Load when calling CNV segments via CBS-style segmentation on a bin-level log2-ratio CSV from exome / WGS coverage — emits per-segment 5-class CN state (`amplification` / `gain` / `neutral` / `loss` / `deep_deletion`), per-chromosome summary, genome-fraction-altered. Skip when working with single-cell / spatial CNV (use spatial-cnv). trigger: CNV, copy number, amplification, deletion, CNVkit tags: - genomics - cnv - copy-number - cbs - segmentation - cnvkit - gatk-gcnv
Load this skill for the file-based analysis named in the description. The function library and CLI share the same calculations; no external aligner, assembler, caller or annotation service is started.
from skills._sdk.notebook import load_skill, read_input, write_output
library = load_skill("genomics-cnv-calling")
data = read_input("input.csv", reader=library.read_bins)
result = library.analyze(data)
write_output(result, "tables/result.csv")
write_output(library.copy_ratio_figure(result), "figures/distribution.png")Run `examples/example_step.py` through the step runner for a small, hand-worked synthetic fixture. It asserts known summary values. The reader materializes the input in memory; use bounded FASTQ reads or pre-filter large genomic files before loading them.
<!-- api:begin generated from _api.py; regenerate with run.py api <skill dir> --write -->
Read a bin CSV through read_input(path, reader=library.read_bins).
:param path: CSV containing chrom, start, end and log2_ratio. :returns: Bin table. :raises ValueError: The CSV cannot be parsed.
Return new CNV segments from bin-level log2 ratios; leave data unchanged.
:param data: Bins with chrom, start, end and finite log2_ratio. :param method: CLI default cbs, or none to classify individual bins. :param alpha: CLI default 0.01; smaller values require stronger splits. :returns: Segments with cn_state, estimated_cn and attrs['run_info']. :raises ValueError: Columns, coordinates, method or alpha are invalid.
Return analysis diagnostics and numeric summary.
:param data: Result returned by analyze. :param keep: Keep diagnostics by default; the CLI passes False. :returns: Independent copy of run diagnostics. :raises ValueError: analyze has not populated diagnostics.
Plot segment log2 ratios in table order without writing a file.
:param data: Segment table returned by analyze. :returns: Matplotlib Figure. :raises ValueError: log2_ratio is absent or the table is empty.
<!-- api:end -->
`analyze` returns a new DataFrame and leaves the input unchanged. `run_info(result)` returns the summary and method diagnostics. The CLI passes `keep=False` so diagnostics do not enter output tables. All calculations are deterministic; synthetic CLI demos retain seed 42.
Input files:
CLI output files:
The library writes no files. Steps use `write_output`; the CLI owns the listed artifacts. Public figure functions return matplotlib Figures and do not add new CLI outputs.
python skills/genomics/genomics-cnv-calling/genomics_cnv_calling.py --input input_file --output results/ python skills/genomics/genomics-cnv-calling/genomics_cnv_calling.py --demo --output /tmp/genomics_cnv_calling_demo
`numpy`, `pandas`, `matplotlib`
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…