Agent skill · Testing & QA

bio-data-visualization-statistical-annotation

Add p-value brackets, significance asterisks, and effect-size annotations to distribution plots using ggpubr, ggsignif, and statannotations with correct test selection (parametric vs non-parametric vs paired), multiple-testing adjustment, and rendering of negative results. Use when a boxplot/violin/raincloud needs in-figure statistical comparisons between groups.

BioTender-maxgithub.com/BioTender-maxGitHub ↗
claude-codeNOASSERTION
Install
npx skills add BioTender-max/awesome-bio-agent-skills --skill statistical-annotation --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 3
SKILL.md size: 13 KB
Bundled scripts: none
Path: skills/bioskills/statistical-annotation/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 135
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

## Version Compatibility Reference examples tested with: ggpubr 0.6+, ggsignif 0.6+, rstatix 0.7+, statannotations 0.6+ (Python), seaborn 0.13+. Before using code patterns, verify installed versions match. If versions differ: - R: `packageVersion('<pkg>')` then `?function_name` - Python: `pip show <package>` then `help(module.function)` to check signatures If code throws ImportError, AttributeError, or TypeError, introspect the installed package and adapt the example to match the actual API rather than retrying. # Statistical Annotation **"Add p-values to my plot"** -> Render pairwise group comparisons as brackets with the correct statistical test (parametric vs non-parametric, paired vs unpaired, independent vs nested), adjusted for multiple testing, with rendering of significance as either numerical p OR asterisks. The choices that matter: which test is appropriate for the data, what multiple-testing adjustment applies, and whether to show n.s. (non-significant) results. - R: `ggpubr::stat_compare_means`, `ggsignif::geom_signif`, `rstatix::t_test`/`wilcox_test` - Python: `statannotations.Annotator`, `scipy.stats` directly ## The Single Most Important Modern Insight -- The Test Mu

What's inside
Steps it walks through
  1. Version Compatibility
  2. The Single Most Important Modern Insight -- The Test Must Match the Data
  3. Decision Tree for Test Selection
  4. Multiple Testing Adjustment
  5. ggpubr -- Standard ggplot2 Workflow
  6. ggsignif -- Lighter Alternative
  7. statannotations (Python)
  8. Per-Method Failure Modes
  9. Default t-test on non-normal data
  10. Pairwise tests without adjustment
  11. Paired data tested as independent
  12. Nested data tested with pairwise t
  13. Asterisks shown but p-values not reported anywhere
  14. n.s. annotation hidden
Ships with 2 files
  • examples/statanno_phd.R
  • usage-guide.md
More from awesome-bio-agent-skills
All skills →
About this skill
What does the bio-data-visualization-statistical-annotation skill do?

Add p-value brackets, significance asterisks, and effect-size annotations to distribution plots using ggpubr, ggsignif, and statannotations with correct test selection (parametric vs non-parametric vs paired), multiple-testing adjustment, and rendering of negative results. Use when a boxplot/violin/raincloud needs in-figure statistical comparisons between groups.

How do I install it?

Run `npx skills add BioTender-max/awesome-bio-agent-skills --skill statistical-annotation --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From BioTender-max/awesome-bio-agent-skills, a repository with 135 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going