Skip to content
Agentmart
Submit a tool

claw-ancestry-pca

Ancestry decomposition PCA against the Simons Genome Diversity Project

Skill by Manuel Corpas

IndexedMIT★ 1,166
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/clawbio-claw-ancestry-pca

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Ancestry decomposition PCA against the Simons Genome Diversity Project

Use cases: data-analysis

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/claw-ancestry-pca

What's inside

Skill name
claw-ancestry-pca
Description
Ancestry decomposition PCA against the Simons Genome Diversity Project
License
MIT
Metadata
author: Manuel Corpas · version: 0.1.0
Instructions
118 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (4)

  • SKILL.md
  • ancestry_pca.py
  • __init__.py · tests/
  • test_ancestry_pca.py · tests/

SKILL.md (first lines)

# 🦖 Ancestry Decomposition PCA

Place your study cohort in global genetic context by computing a joint PCA against the Simons Genome Diversity Project (SGDP) — 345 samples from 164 populations spanning every inhabited continent.

## What it does

1. Takes your VCF + population map as input
2. Finds common variants between your cohort and the SGDP reference panel (bundled)
3. Runs PLINK PCA on the merged dataset
4. Separates your cohort from SGDP reference samples
5. Matches SGDP samples to their population labels (164 populations)
6. Generates a publication-quality multi-panel figure:
   - **Panel A**: PC1 vs PC2 — main population structure of your cohort
   - **Panel B**: PC3 vs PC2 with regional groupings and confidence ellipses
   - **Panel C**: PC3 vs PC1 with language/cultural groupings
   - **Panel D**: Global context — your samples (circles) vs SGDP (triangles)
7. Produces a markdown report with variance explained, population assignments, and reproducibility bundle

## Why this exists

If you ask ChatGPT to "run a PCA against a global reference panel," it will:
- Not know which reference panel to use
- Hallucinate PLINK flags for merging datasets with different variant sets
- Skip IBD removal (related individuals distort PCA)
- Not normalise contig names between your VCF and the reference
- Produce a single scatter plot with no population labels

This skill encodes the correct methodological decisions:
- Uses SGDP (the gold-standard reference for global diversity)
- Handles contig normalisation (chr1 vs 1)
- Filters to common biallelic SNPs shared between datasets
- Removes related individuals via IBD checks
- Produces publication-quality multi-panel figures with confidence ellipses
- Differentiates your samples (circles) from reference (triangles)

## Reference Panel

The skill bundles the SGDP v4 dataset (Mallick et al., 2016, Nature):
- 345 samples from 164 populations
- Whole-genome sequencing at high coverage
- MAF > 0.1% filter applied
- Populations span: Africa, Americas, Central/South Asia, East Asia, Europe, Middle East, Oceania

## Usage

```bash
python ancestry_pca.py \
    --vcf your_cohort.vcf.gz \
    --pop-map your_populations.tsv \
    --output ancestry_report
```

### Demo (works out of the box)

```bash
python ancestry_pca.py --demo --output demo_report
```

The demo uses pre-computed PCA results from the Peruvian Genome Project (736 samples, 28 populations) and generates the full 4-panel figure instantly.

## Example Output

```
Ancestry Decomposition PCA
==========================
Cohort: 736 samples, 28 populations
Reference: SGDP (345 samples, 164 populations)
Common variants: 42,831 biallelic SNPs

Variance explained:
  PC1: 51.44%  PC2: 21.70%  PC3: 6.70%

Panel D — Global Context:
  Cohort samples cluster between European and East Asian
  reference populations, with Amazonian groups showing
  distinct positioning from Highland and Coastal groups.

Figures saved to: ancestry_report/
  Figure3_PCA_composite.png (300 dpi)
  Figure3_PCA_composite.pdf (vector)

Reproducibility:
  commands.sh | environment.yml | checksums.sha256
```

## Output Structure

```
<output_dir>/
├── report.md
├── result.json
├── tables/
│   ├── pc_coordinates.csv
│   └── variance_explained.csv
├── figures/
│   └── pca_composite.png        # omitted with --no-figures
└── reproducibility/
    ├── commands.sh              # command that reproduces this run
    ├── environment.yml
    └── checksums.sha256         # cd <output_dir> && sha256sum -c reproducibility/checksums.sha256
```

## Interpretation Guide

- **PC1** typically captures the largest axis of global differentiation (often Africa vs non-Africa)
- **PC2** separates major continental groups (Europe, East Asia, Americas)
- **PC3** often reveals finer substructure within continental groups
- Confidence ellipses show 2.5 standard deviations around each population cluster
- Your samples shown as **circles**, SGDP reference as **triangles**

## Citation

If you use this skill in a publication, please cite:

- Mallick, S. et al. (2016). The Simons Genome Diversity Project. Nature, 538, 201-206.
- Corpas, M. (2026). ClawBio. https://github.com/ClawBio/ClawBio

From ClawBio/ClawBio, MIT.

More from ClawBio/ClawBio

Signals

Stars
1,166
Forks
288
Open issues
27
Last commit (this folder)
Oct 11, 2026 (17 days ago)
Last release
Sep 11, 2026 (1 month ago)

From GitHub (fetched Oct 24, 2026).

Details

Version
0.1.0
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

Same skill elsewhere

Copies of this SKILL.md published by others; search shows only one of them.

More from Manuel Corpas

Cite this page

claw-ancestry-pca skill. Agent Mart. https://agentmart.dev/skills/clawbio-claw-ancestry-pca (last updated 2026-10-24)