G25 and nMonte vs qpAdm: what PCA coordinates can and cannot tell you
G25 coordinates and nMonte fits are fast but give no test of fit. How they differ from qpAdm, and how to use both to find and test models.
Updated 3 min read
G25 coordinates and nMonte fits are a quick way to find close populations and rough mixtures, but they are not a test. They always return an answer, even for a wrong model. qpAdm is slower, but it can reject a model, and that is what makes its accepted models meaningful.
Use coordinates to explore and to choose candidate sources. Use qpAdm to test the models you want to report.
What G25 coordinates are
Global25 (G25) is a set of PCA coordinates for many ancient and modern genomes, published by the Eurogenes blog. Each genome has 25 coordinates, one per principal component, each scaled so that distances between genomes reflect the variation on that component.
With coordinates, two operations are fast:
- Nearest populations: the populations with the smallest distance to a genome.
- Mixture fits (nMonte, Vahaduo and similar calculators): the weights of a set of source populations whose weighted average is closest to the target's coordinates. The output is the weights and a distance, the misfit that is left.
Where coordinate fits go wrong
- No test of fit. The calculator returns the best weights it can find. A small distance looks good, but there is no p-value, so there is no way to say a model is wrong.
- Only 25 dimensions. PCA keeps the directions of most variation in the panel that built it. Ancestry that differs only on minor directions, for example between two related farmer populations, can be invisible.
- Drift moves points. A population that went through a bottleneck moves away from its relatives in PCA space for reasons that are not mixture. A fit may explain that shift with a spurious extra source.
- Overfitting. With many candidate sources, the calculator can mix distant ones to land on the target's point. The weights can look precise and still be wrong.
How qpAdm differs
qpAdm works on f4-statistics computed from all the shared SNPs, not on a few summary axes. It tests whether the sources explain the target as seen from a set of right populations, and it returns a p-value. A model that is missing a source, or that uses the wrong proxy, is rejected.
In short:
- Speed: coordinates take milliseconds; qpAdm takes seconds to minutes.
- Test: coordinates have none; qpAdm has a p-value.
- Information used: coordinates use 25 axes; qpAdm uses every shared SNP.
- Uncertainty: coordinates give none by default; qpAdm gives standard errors.
A workflow that uses both
- Find the populations nearest to your target on G25.
- Fit two- and three-source mixtures with nMonte or Vahaduo to shortlist candidate models.
- Test the shortlist with qpAdm, against a fixed right panel or by rotation.
- Report the qpAdm results, and say which coordinate fits qpAdm rejected.
Testing your G25 models with qpAdm in Nexju
If you already have a model from a G25 calculator, test it in Nexju. Upload the same 23andMe, AncestryDNA or MyHeritage file you used for your G25 coordinates, pick the matching sources from the Allen Ancient DNA Resource, and run qpAdm against a right panel. Nexju can also rotate the sources for you, one slot at a time or exhaustively.
A model that fits on G25 and passes qpAdm is far better supported than one that only fits on coordinates. Single qpAdm models are on the free plan.
References
- Patterson N., Price A. L., Reich D. 2006. Population structure and eigenanalysis. PLoS Genetics 2. doi:10.1371/journal.pgen.0020190
- Harney É. et al. 2021. Assessing the performance of qpAdm. Genetics 217. doi:10.1093/genetics/iyaa045