SEPIA — QC baked into each published archaic VCF
SEPIA — QC baked into each published archaic VCF
We are reusing the published, damage-aware genotype VCFs for the high-coverage archaics rather than re-calling. This documents exactly what QC/filters each release already carries — so we know what we're inheriting, and what we still must add before comparing across genomes. Sources: the MPI-EVA release READMEs, the filename-encoded parameters, and the papers.
Not phased. All of these are unphased diploid genotype calls from
snpAD(Prüfer 2018, an ancient-DNA-damage-aware genotyper) — the genotype with the highest likelihood under an empirical error model is reported per position. Statistical phasing, if ever needed, is a separate downstream step.
1. The 2017 snpAD release — Altai (Denisova 5), Vindija 33.19, Denisova 3
Source: cdna.eva.mpg.de/neandertal/Vindija/VCF/README (one shared README; files chr{1..22,X}_mq25_mapab100.vcf.gz).
| QC element | Value (verbatim / from filename) |
|---|---|
| Genotyper | snpAD — "an ancient DNA damage-aware genotyper"; "the genotype with the highest likelihood is reported at each position" |
| Reference build | hg19 / GRCh37 ("used as reference in all VCFs") |
| Mapping quality | MQ ≥ 25 ("required a MQ>=25 on sequences") — encoded mq25 |
| Mappability | Heng Li's 35-mer filter — "a position is mappable if none of the overlapping 35mers align to any other position in the genome allowing for up to one mismatch"; encoded mapab100; "estimates were restricted to mappable regions" |
| Damage handling | built into snpAD's empirical error profile (damage-aware) |
| Not specified in the README (confirm from the paper / apply ourselves) | base-quality threshold; min/max depth filters; tandem-repeat / segmental-duplication masking; the per-sample coverage |
What we still add before use: a min/max depth filter per sample (the papers apply one; the README doesn't state it) and, for cross-genome comparison, a common mask (intersect the mappability + any release masks so all genomes are compared on identical sites).
2. Chagyrskaya 8
Source: ftp.eva.mpg.de/neandertal/Chagyrskaya/ (VCF chr{1..22,X}.noRB.vcf.gz; a separate FilterBed/ quality mask; README).
| QC element | Value |
|---|---|
| Coverage | ~28× (README) |
| Genotyper | snpAD (Mafessoni et al. 2020) |
| Filter mask | a separate FilterBed/ BED must be applied — the VCF alone is not the final filtered call set |
.noRB filename |
to confirm from the README — most likely "repeat/reliable-blocks mask NOT yet applied" (i.e. apply FilterBed/ yourself) |
3. Denisova 25 (⚠ preprint — provisional)
Source: cdna.eva.mpg.de/denisova/Den25/ (VCF chr{…}.Den25.L35MQ25.B30.map35_100.vcf.gz; FilterBed/; README).
Filters encoded in the filename:
| Token | Meaning |
|---|---|
| L35 | minimum read length 35 bp |
| MQ25 | mapping quality ≥ 25 |
| B30 | base quality ≥ 30 |
| map35_100 | 35-mer mappability, 100% |
Coverage ~24× (README). Separate FilterBed/ mask to apply. Peer review pending → treat as provisional.
4. Vindija 87
Same individual as Vindija 33.19 → for called genotypes, use the Vindija 33.19 VCF (§1). The separate 1.3× Vi87 BAM is only needed if you specifically want that library's reads.
5. El Sidrón 1253 — exome VCF only
cdna.eva.mpg.de/neandertal/exomes/ — coding regions only (target-capture, Castellano 2014). Not comparable to the genome-wide panel; excluded from the analysis.
6. Tier-B low-coverage genomes — NO published VCF
Denisova 11, Goyet Q56-1, Les Cottés, Spy 94a, Mezmaiskaya 1 & 2, Hohlenstein-Stadel, Scladina: BAM only — coverage is too low for published diploid genotype calls, and it should be. For these we do not hard-call; we compute genotype likelihoods with ANGSD ourselves (rebuild_from_raw.md Stage 4), applying our own documented filters: MQ ≥ 30, BQ ≥ 20, a max-depth cap (reject pileup artifacts), the same mappability mask as the Tier-A VCFs, mapDamage rescaling, and -noTrans (transversion-only) for the ancestry PCA.
Cross-genome harmonization (the "use them correctly" step)
Reusing the published VCFs is right — but they come from different releases with different masks and (for Den25) different quality tokens, so they are not automatically comparable. Before any joint analysis:
- Apply each genome's companion FilterBed/mappability mask (the VCF alone isn't the filtered set).
- Intersect to a common mask so every genome is evaluated on identical, high-confidence sites.
- Confirm one build (all are hg19 — verify with the Q2 tracer-SNP lint).
- Apply a uniform per-site depth band across genomes.
- Only then merge / subset to the pigmentation + ancestry panels.
This is the QC bridge between "the authors' calls" and "a call set we can compare across samples" — documented so the reanalysis inherits the authors' careful work and adds the harmonization they did not (because each was released independently).