<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>ADMIXTOOLS on PopGen Blog</title>
    <link>https://popgenblog.com/tags/admixtools/</link>
    <description>Recent content in ADMIXTOOLS on PopGen Blog</description>
    <generator>Hugo -- 0.148.2</generator>
    <language>en-us</language>
    <lastBuildDate>Tue, 03 Feb 2026 18:45:43 +0100</lastBuildDate>
    <atom:link href="https://popgenblog.com/tags/admixtools/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Fast, Transparent f4-Based Admixture Screening in R</title>
      <link>https://popgenblog.com/posts/deterministic-f4-solver/</link>
      <pubDate>Tue, 03 Feb 2026 18:45:43 +0100</pubDate>
      <guid>https://popgenblog.com/posts/deterministic-f4-solver/</guid>
      <description>&lt;p&gt;In this post, I will build a transparent admixture-screening workflow from scratch in R using f4-statistics and constrained regression. The main advantage is automation: instead of hand-writing every candidate model, the script tests many 2-way, 3-way, and 4-way source combinations in one pass and ranks them by fit. ADMIXTOOLS 2 already includes batch tools such as &lt;code&gt;qpadm_multi()&lt;/code&gt; and &lt;code&gt;qpadm_rotate()&lt;/code&gt;, so the point is not that qpAdm cannot be automated. The point is that this custom workflow is compact, transparent, easy to modify, and useful for exploratory model search before you validate the strongest candidates more formally.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Running qpAdm with ADMIXTOOLS2 in R: Testing and Interpreting Ancestry Models</title>
      <link>https://popgenblog.com/posts/qpadm-tutorial-admixture-modeling/</link>
      <pubDate>Tue, 16 Dec 2025 14:37:15 +0100</pubDate>
      <guid>https://popgenblog.com/posts/qpadm-tutorial-admixture-modeling/</guid>
      <description>&lt;p&gt;This post covers using qpAdm in R to test ancestry models and estimate admixture proportions. qpAdm builds on f4-statistics and provides a framework for evaluating whether proposed source populations can explain a target population&amp;rsquo;s genetic makeup.&lt;/p&gt;
&lt;p&gt;For R and admixtools setup instructions on Debian/Ubuntu, see my previous post: &lt;a href=&#34;https://popgenblog.com/posts/interpreting-f4-tests-admixtools/&#34;&gt;Running f4-Statistics with Admixtools in R&lt;/a&gt;. Windows users can find R installation instructions on the R website.&lt;/p&gt;
&lt;hr&gt;
&lt;h2 id=&#34;what-is-qpadm&#34;&gt;What is qpAdm?&lt;/h2&gt;
&lt;p&gt;qpAdm is a method for testing ancestry models and estimating admixture proportions. It determines whether a target population can be modeled as a mixture of specified source populations (&amp;ldquo;left populations&amp;rdquo;), and if the model fits, calculates the contribution from each source. The method builds on f4-statistics (covered in my previous post) to evaluate these ancestry models.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How to Run and Interpret f4-Statistics in R: AADR Examples</title>
      <link>https://popgenblog.com/posts/interpreting-f4-tests-admixtools/</link>
      <pubDate>Fri, 28 Nov 2025 20:43:01 +0100</pubDate>
      <guid>https://popgenblog.com/posts/interpreting-f4-tests-admixtools/</guid>
      <description>&lt;p&gt;This post covers how to run f4-statistics using the admixtools package for R. Compared with the original ADMIXTOOLS workflow, the R implementation is more convenient for testing multiple population combinations because it can be used interactively, without repeatedly editing parameter files.&lt;/p&gt;
&lt;p&gt;For more in-depth examples, see &lt;a href=&#34;https://popgenblog.com/posts/interpreting-f4-statistics-admixpy/&#34;&gt;Interpreting f4-Statistics with AdmixPy&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;what-are-f4-statistics&#34;&gt;What are f4-statistics?&lt;/h2&gt;
&lt;p&gt;F4-statistics measure asymmetry in allele sharing among four populations. For four populations &lt;span class=&#34;katex&#34;&gt;&lt;span class=&#34;katex-mathml&#34;&gt;&lt;math xmlns=&#34;http://www.w3.org/1998/Math/MathML&#34;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;A&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&#34;application/x-tex&#34;&gt;A&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span class=&#34;katex-html&#34; aria-hidden=&#34;true&#34;&gt;&lt;span class=&#34;base&#34;&gt;&lt;span class=&#34;strut&#34; style=&#34;height:0.6833em;&#34;&gt;&lt;/span&gt;&lt;span class=&#34;mord mathnormal&#34;&gt;A&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, &lt;span class=&#34;katex&#34;&gt;&lt;span class=&#34;katex-mathml&#34;&gt;&lt;math xmlns=&#34;http://www.w3.org/1998/Math/MathML&#34;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;B&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&#34;application/x-tex&#34;&gt;B&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span class=&#34;katex-html&#34; aria-hidden=&#34;true&#34;&gt;&lt;span class=&#34;base&#34;&gt;&lt;span class=&#34;strut&#34; style=&#34;height:0.6833em;&#34;&gt;&lt;/span&gt;&lt;span class=&#34;mord mathnormal&#34; style=&#34;margin-right:0.05017em;&#34;&gt;B&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, &lt;span class=&#34;katex&#34;&gt;&lt;span class=&#34;katex-mathml&#34;&gt;&lt;math xmlns=&#34;http://www.w3.org/1998/Math/MathML&#34;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;C&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&#34;application/x-tex&#34;&gt;C&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span class=&#34;katex-html&#34; aria-hidden=&#34;true&#34;&gt;&lt;span class=&#34;base&#34;&gt;&lt;span class=&#34;strut&#34; style=&#34;height:0.6833em;&#34;&gt;&lt;/span&gt;&lt;span class=&#34;mord mathnormal&#34; style=&#34;margin-right:0.07153em;&#34;&gt;C&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, and &lt;span class=&#34;katex&#34;&gt;&lt;span class=&#34;katex-mathml&#34;&gt;&lt;math xmlns=&#34;http://www.w3.org/1998/Math/MathML&#34;&gt;&lt;semantics&gt;&lt;mrow&gt;&lt;mi&gt;D&lt;/mi&gt;&lt;/mrow&gt;&lt;annotation encoding=&#34;application/x-tex&#34;&gt;D&lt;/annotation&gt;&lt;/semantics&gt;&lt;/math&gt;&lt;/span&gt;&lt;span class=&#34;katex-html&#34; aria-hidden=&#34;true&#34;&gt;&lt;span class=&#34;base&#34;&gt;&lt;span class=&#34;strut&#34; style=&#34;height:0.6833em;&#34;&gt;&lt;/span&gt;&lt;span class=&#34;mord mathnormal&#34; style=&#34;margin-right:0.02778em;&#34;&gt;D&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, the statistic is written as:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
