Bioconductor Dnacopy logo

Bioconductor Dnacopy

Organization
bioMate-AI
bioconductor-dnacopy

Implements the circular binary segmentation (CBS) algorithm to segment DNA copy number data and identify genomic regions with abnormal copy number.

Overview

PublisherbioMate-AI
Repositorybiomate-bioconductor-kb
Skill namebioconductor-dnacopy
Stars
804
Forks
66
Bundled files
Instructions only
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by bioMate-AI on GitHub. Read the source before you install it.

Installation

Install the Bioconductor Dnacopy AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/bioMate-AI/biomate-bioconductor-kb/tree/main/skills/genomics/dnacopy
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/bioMate-AI/biomate-bioconductor-kb.git /tmp/biomate-bioconductor-kb
mkdir -p .claude/skills
cp -r /tmp/biomate-bioconductor-kb/skills/genomics/dnacopy .claude/skills/bioconductor-dnacopy
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Bioconductor Dnacopy in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Bioconductor Dnacopy on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Bioconductor Dnacopy is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

DNAcopy

Dependencies & Environment

Package-intrinsic requirements from the Bioconductor landing page — reproduce in any R environment.

  • Version: 1.86.0 · Bioconductor: 3.23 · R: ≥ 4.6
  • Depends: Imports
  • System requirements: URL
  • Install: BiocManager::install("DNAcopy")

When to Use

  • Copy Number Segmentation: Finding change-points in array DNA copy number data (e.g., array CGH) using the segment() function.
  • Identifying Gains and Losses: Determining regions of gained and lost copy number by plotting segment means with plot().
  • Outlier Smoothing: Smoothing single point outliers in log-ratio data prior to segmentation using smooth.CNA().

When NOT to Use

  • For allele-specific copy number estimation or tumor purity/ploidy correction, use PureCN because DNAcopy only segments total copy number.
  • For single-cell DNA copy number profiling where specialized noise models are required, use AneuFinder because DNAcopy assumes bulk-level signal distributions.
  • For multi-sample joint segmentation, use copynumber because DNAcopy processes samples independently.

Data Requirements

  • Input Object: Data must be converted into a CNA object using the CNA() function.
  • Required Columns: A matrix or vector of log-ratio data, a vector of Chromosome identifiers, and a vector of Position (map locations).
  • Data Type: Typically specified as data.type="logratio".

Key Parameters

  • undo.splits ("sdundo"): Method to get rid of unnecessary change-points due to local trends.
  • undo.SD (3): The number of standard deviations used when undo.splits="sdundo" to remove splits.
  • plot.type ("w", "s", "c", "p"): Determines the layout of the plot() function (e.g., whole genome, by chromosome, across studies, or ordered by plateau).
  • p.method ("perm"): Method for p-value computation. The default is a faster hybrid approach, but full permutations can be forced.
  • nperm (10000): Number of permutations used in the hybrid method.
  • alpha: Significance level for the test to accept change-points.
  • verbose (1): Controls the printing of progress during the segment() run.

Best Practices

  • Smooth Data First: Always run smooth.CNA() on your CNA object to mitigate the effect of single point outliers before running segment().
  • Undo Local Trends: Use undo.splits="sdundo" with undo.SD=3 in segment() to remove false-positive change-points caused by local data trends.
  • Subset Large Data: Use subset.CNA() to subset by chromosome and sample so that segmentation does not have to be run on a whole data set at once.
  • Determine Thresholds: Use plot() with plot.type="p" to order segments by their chromosome means, helping to visually determine the plateaus for calling gains (e.g., 0.4) and losses (e.g., -0.6).

Common Pitfalls

  • Over-segmentation from Local Trends: The algorithm may find change-points due to local trends rather than true copy number shifts. Fix: Apply the undo.splits="sdundo" parameter in segment().
  • Slow Computation on Large Datasets: Running the full permutation algorithm takes O(N^2) computations. Fix: Rely on the default hybrid approach (Gaussian approximation + permutation) rather than setting p.method='perm', or reduce nperm.
  • Plotting Clutter: Plotting multiple chromosomes at once can be hard to read. Fix: Use plot.type="s" to plot by chromosome within a study.

Alternatives

  • copynumber: For multi-sample segmentation and joint segmentation of copy number data.
  • PureCN: For joint estimation of tumor purity, ploidy, and absolute copy number.
  • AneuFinder: For copy number analysis of single-cell sequencing data.

Citations

  • Olshen, A. B., Venkatraman, E. S., Lucito, R., and Wigler, M. (2004). Circular binary segmentation for the analysis of array-based dna copy number data. Biostatistics, 5:557–72.
  • Venkatraman, E. S. and Olshen, A. B. (2007). A faster circular binary segmentation algorithm for the analysis of array cgh data. Bioinformatics, 23:657–63.

References


Run this on BioMate

This skill is the knowledge layer — when, why, and how to use dnacopy. To run this analysis on your own data with managed compute, automated QC, and reproducible outputs, use BioMate — free to start.

▶ Open dnacopy on BioMate →

Frequently asked questions

What does the Bioconductor Dnacopy AI skill do?

Implements the circular binary segmentation (CBS) algorithm to segment DNA copy number data and identify genomic regions with abnormal copy number.

Why use Bioconductor Dnacopy on TypingMind?

Because you install it once and use it with any model. Bioconductor Dnacopy is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Bioconductor Dnacopy in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/bioMate-AI/biomate-bioconductor-kb/tree/main/skills/genomics/dnacopy. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Bioconductor Dnacopy?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Bioconductor Dnacopy?

As many as you like. As long as a model supports skills, you can use Bioconductor Dnacopy with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Bioconductor Dnacopy AI skill free?

It is published on GitHub by bioMate-AI. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇