<?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>F-Statistics on PopGenetics Blog</title><link>https://popgenetics.dev/topics/f-statistics/</link><description>Recent content in F-Statistics on PopGenetics Blog</description><generator>Hugo -- 0.148.2</generator><language>en-us</language><lastBuildDate>Wed, 16 Sep 2026 22:00:24 +0200</lastBuildDate><atom:link href="https://popgenetics.dev/topics/f-statistics/index.xml" rel="self" type="application/rss+xml"/><item><title>Interpreting f4-Statistics with AdmixPy</title><link>https://popgenetics.dev/posts/interpreting-f4-statistics-admixpy/</link><pubDate>Wed, 16 Sep 2026 22:00:24 +0200</pubDate><guid>https://popgenetics.dev/posts/interpreting-f4-statistics-admixpy/</guid><description>&lt;p>f4-statistics can be used to test asymmetries in allele sharing between populations. They measure the covariance between allele-frequency differences across two pairs of populations.&lt;/p>
&lt;h2 id="theory-and-formula">Theory and formula&lt;/h2>
&lt;p>An f4-statistic is the average, across SNPs, of the product of the allele-frequency differences between two pairs of populations:
&lt;/p>
&lt;span class="katex-display">&lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML" display="block">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>f&lt;/mi>&lt;mn>4&lt;/mn>&lt;/msub>&lt;mo stretchy="false">(&lt;/mo>&lt;mi>A&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>B&lt;/mi>&lt;mo separator="true">;&lt;/mo>&lt;mi>C&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>D&lt;/mi>&lt;mo stretchy="false">)&lt;/mo>&lt;mo>=&lt;/mo>&lt;msub>&lt;mi mathvariant="double-struck">E&lt;/mi>&lt;mi>i&lt;/mi>&lt;/msub>&lt;mrow>&lt;mo fence="true">[&lt;/mo>&lt;mo stretchy="false">(&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>A&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo>−&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>B&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo stretchy="false">)&lt;/mo>&lt;mo stretchy="false">(&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>C&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo>−&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>D&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo stretchy="false">)&lt;/mo>&lt;mo fence="true">]&lt;/mo>&lt;/mrow>&lt;/mrow>&lt;annotation encoding="application/x-tex">
f_4(A,B;C,D)=\mathbb{E}_i\left[(p_{A,i}-p_{B,i})(p_{C,i}-p_{D,i})\right]
&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:1em;vertical-align:-0.25em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal" style="margin-right:0.10764em;">f&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3011em;">&lt;span style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">4&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mopen">(&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;span class="mpunct">,&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;span class="mpunct">;&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.07153em;">C&lt;/span>&lt;span class="mpunct">,&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.02778em;">D&lt;/span>&lt;span class="mclose">)&lt;/span>&lt;span class="mspace" style="margin-right:0.2778em;">&lt;/span>&lt;span class="mrel">=&lt;/span>&lt;span class="mspace" style="margin-right:0.2778em;">&lt;/span>&lt;/span>&lt;span class="base">&lt;span class="strut" style="height:1.0361em;vertical-align:-0.2861em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathbb">E&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3117em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="minner">&lt;span class="mopen delimcenter" style="top:0em;">[&lt;/span>&lt;span class="mopen">(&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight">A&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mbin">−&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.05017em;">B&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mclose">)&lt;/span>&lt;span class="mopen">(&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.07153em;">C&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mbin">−&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.02778em;">D&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mclose">)&lt;/span>&lt;span class="mclose delimcenter" style="top:0em;">]&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;p>Multiplying out results in:
&lt;/p></description></item><item><title>F4Mix: Sample-Wise Ancestry Fitting with f4 Statistics</title><link>https://popgenetics.dev/posts/f4mix/</link><pubDate>Sat, 15 Aug 2026 11:44:17 +0200</pubDate><guid>https://popgenetics.dev/posts/f4mix/</guid><description>&lt;p>Last week I published &lt;a href="https://github.com/system0x7/f4mix">F4Mix&lt;/a>, a tool for fitting modern and ancient DNA samples against a pool of source populations, usually ancient ones. F4Mix estimates, for each target, the non-negative mixture of reference populations whose covariance-aware f4 profile best matches it. This makes it useful for testing every sample against the same sources.&lt;/p>
&lt;p>With a proper setup, the tool gives meaningful results, and can reveal both substructure and clear outliers within a site.&lt;/p></description></item><item><title>Testing for Admixture with f3-Statistics in AdmixPy</title><link>https://popgenetics.dev/posts/admixture-f3-statistics/</link><pubDate>Fri, 07 Aug 2026 14:01:07 +0200</pubDate><guid>https://popgenetics.dev/posts/admixture-f3-statistics/</guid><description>&lt;p>f3-statistics are used to test if populations are admixed or to measure shared genetic drift between two populations relative to an outgroup.&lt;/p>
&lt;p>This post explains the theory behind admixture f3-statistics and shows how to run admixture f3 tests with &lt;a href="https://github.com/system0x7/admixpy">AdmixPy&lt;/a>.&lt;/p>
&lt;p>If you want to skip the theoretical part, you can jump to &lt;a href="#running-admixture-f3-statistics-in-admixpy">Running admixture f3-statistics in AdmixPy&lt;/a>.&lt;/p>
&lt;hr>
&lt;h2 id="what-is-an-f3-statistic">What is an f3-statistic?&lt;/h2>
&lt;p>For three populations, the statistic is written as:&lt;/p>
&lt;span class="katex-display">&lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML" display="block">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>f&lt;/mi>&lt;mn>3&lt;/mn>&lt;/msub>&lt;mo stretchy="false">(&lt;/mo>&lt;mi>A&lt;/mi>&lt;mo separator="true">;&lt;/mo>&lt;mi>B&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>C&lt;/mi>&lt;mo stretchy="false">)&lt;/mo>&lt;mo>=&lt;/mo>&lt;msub>&lt;mi mathvariant="double-struck">E&lt;/mi>&lt;mi>i&lt;/mi>&lt;/msub>&lt;mrow>&lt;mo fence="true">[&lt;/mo>&lt;mo stretchy="false">(&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>A&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo>−&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>B&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo stretchy="false">)&lt;/mo>&lt;mo stretchy="false">(&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>A&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo>−&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>C&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;mo stretchy="false">)&lt;/mo>&lt;mo fence="true">]&lt;/mo>&lt;/mrow>&lt;/mrow>&lt;annotation encoding="application/x-tex">
f_3(A;B,C)=\mathbb{E}_i\left[(p_{A,i}-p_{B,i})(p_{A,i}-p_{C,i})\right]
&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:1em;vertical-align:-0.25em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal" style="margin-right:0.10764em;">f&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3011em;">&lt;span style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">3&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mopen">(&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;span class="mpunct">;&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;span class="mpunct">,&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.07153em;">C&lt;/span>&lt;span class="mclose">)&lt;/span>&lt;span class="mspace" style="margin-right:0.2778em;">&lt;/span>&lt;span class="mrel">=&lt;/span>&lt;span class="mspace" style="margin-right:0.2778em;">&lt;/span>&lt;/span>&lt;span class="base">&lt;span class="strut" style="height:1.0361em;vertical-align:-0.2861em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathbb">E&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3117em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="minner">&lt;span class="mopen delimcenter" style="top:0em;">[&lt;/span>&lt;span class="mopen">(&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight">A&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mbin">−&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.05017em;">B&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mclose">)&lt;/span>&lt;span class="mopen">(&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight">A&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mbin">−&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.07153em;">C&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mclose">)&lt;/span>&lt;span class="mclose delimcenter" style="top:0em;">]&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;p>Here, &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>A&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">A&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;/span>&lt;/span>&lt;/span> is in the target position. Populations &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>B&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">B&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;/span>&lt;/span>&lt;/span> and &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>C&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">C&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.07153em;">C&lt;/span>&lt;/span>&lt;/span>&lt;/span> are the reference populations. The values &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>A&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;/mrow>&lt;annotation encoding="application/x-tex">p_{A,i}&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.7167em;vertical-align:-0.2861em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight">A&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>, &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>B&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;/mrow>&lt;annotation encoding="application/x-tex">p_{B,i}&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.7167em;vertical-align:-0.2861em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.05017em;">B&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>, and &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>p&lt;/mi>&lt;mrow>&lt;mi>C&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;/msub>&lt;/mrow>&lt;annotation encoding="application/x-tex">p_{C,i}&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.7167em;vertical-align:-0.2861em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.07153em;">C&lt;/span>&lt;span class="mpunct mtight">,&lt;/span>&lt;span class="mord mathnormal mtight">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.2861em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span> are the allele frequencies in populations &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>A&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">A&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;/span>&lt;/span>&lt;/span>, &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>B&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">B&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;/span>&lt;/span>&lt;/span>, and &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>C&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">C&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.07153em;">C&lt;/span>&lt;/span>&lt;/span>&lt;/span>, respectively, at SNP &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>i&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">i&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6595em;">&lt;/span>&lt;span class="mord mathnormal">i&lt;/span>&lt;/span>&lt;/span>&lt;/span>. The expectation is an average across SNPs.&lt;/p></description></item><item><title>Pairwise f2 Statistics and FST in AdmixPy</title><link>https://popgenetics.dev/posts/f2-statistics/</link><pubDate>Tue, 30 Jun 2026 17:12:01 +0200</pubDate><guid>https://popgenetics.dev/posts/f2-statistics/</guid><description>&lt;p>This post covers how to run pairwise f2-statistics and FST in &lt;a href="https://github.com/system0x7/admixpy">AdmixPy&lt;/a>. They are simple to interpret, and are also useful computationally. Once f2 blocks have been computed and cached, many downstream analyses can reuse them without repeatedly reading and converting the original genotype data.&lt;/p>
&lt;hr>
&lt;h2 id="what-does-f2-measure">What does f2 measure?&lt;/h2>
&lt;p>The f2-statistic quantifies allele-frequency differentiation between two populations, &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>A&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">A&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;/span>&lt;/span>&lt;/span> and &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>B&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">B&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;/span>&lt;/span>&lt;/span>, and is defined as:&lt;/p>
&lt;span class="katex-display">&lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML" display="block">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>f&lt;/mi>&lt;mn>2&lt;/mn>&lt;/msub>&lt;mo stretchy="false">(&lt;/mo>&lt;mi>A&lt;/mi>&lt;mo separator="true">,&lt;/mo>&lt;mi>B&lt;/mi>&lt;mo stretchy="false">)&lt;/mo>&lt;mo>=&lt;/mo>&lt;mi>E&lt;/mi>&lt;mo stretchy="false">[&lt;/mo>&lt;mo stretchy="false">(&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mi>A&lt;/mi>&lt;/msub>&lt;mo>−&lt;/mo>&lt;msub>&lt;mi>p&lt;/mi>&lt;mi>B&lt;/mi>&lt;/msub>&lt;msup>&lt;mo stretchy="false">)&lt;/mo>&lt;mn>2&lt;/mn>&lt;/msup>&lt;mo stretchy="false">]&lt;/mo>&lt;/mrow>&lt;annotation encoding="application/x-tex">
f_2(A, B) = E[(p_A - p_B)^2]
&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:1em;vertical-align:-0.25em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal" style="margin-right:0.10764em;">f&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3011em;">&lt;span style="top:-2.55em;margin-left:-0.1076em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">2&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mopen">(&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;span class="mpunct">,&lt;/span>&lt;span class="mspace" style="margin-right:0.1667em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;span class="mclose">)&lt;/span>&lt;span class="mspace" style="margin-right:0.2778em;">&lt;/span>&lt;span class="mrel">=&lt;/span>&lt;span class="mspace" style="margin-right:0.2778em;">&lt;/span>&lt;/span>&lt;span class="base">&lt;span class="strut" style="height:1em;vertical-align:-0.25em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05764em;">E&lt;/span>&lt;span class="mopen">[(&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mathnormal mtight">A&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;span class="mbin">−&lt;/span>&lt;span class="mspace" style="margin-right:0.2222em;">&lt;/span>&lt;/span>&lt;span class="base">&lt;span class="strut" style="height:1.1141em;vertical-align:-0.25em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.05017em;">B&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mclose">&lt;span class="mclose">)&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.8641em;">&lt;span style="top:-3.113em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mtight">2&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="mclose">]&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;p>where &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>p&lt;/mi>&lt;mi>A&lt;/mi>&lt;/msub>&lt;/mrow>&lt;annotation encoding="application/x-tex">p_A&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.625em;vertical-align:-0.1944em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mathnormal mtight">A&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span> and &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;msub>&lt;mi>p&lt;/mi>&lt;mi>B&lt;/mi>&lt;/msub>&lt;/mrow>&lt;annotation encoding="application/x-tex">p_B&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.625em;vertical-align:-0.1944em;">&lt;/span>&lt;span class="mord">&lt;span class="mord mathnormal">p&lt;/span>&lt;span class="msupsub">&lt;span class="vlist-t vlist-t2">&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.3283em;">&lt;span style="top:-2.55em;margin-left:0em;margin-right:0.05em;">&lt;span class="pstrut" style="height:2.7em;">&lt;/span>&lt;span class="sizing reset-size6 size3 mtight">&lt;span class="mord mathnormal mtight" style="margin-right:0.05017em;">B&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;span class="vlist-s">​&lt;/span>&lt;/span>&lt;span class="vlist-r">&lt;span class="vlist" style="height:0.15em;">&lt;span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span>&lt;/span> are the allele frequencies of populations &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>A&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">A&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;/span>&lt;/span>&lt;/span> and &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>B&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">B&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;/span>&lt;/span>&lt;/span> at a SNP, and the squared allele-frequency differences are averaged across SNPs.&lt;/p></description></item><item><title>Introducing AdmixPy: f-statistics, qpAdm, and qpWave in Python</title><link>https://popgenetics.dev/posts/admixpy/</link><pubDate>Thu, 21 May 2026 19:05:53 +0200</pubDate><guid>https://popgenetics.dev/posts/admixpy/</guid><description>&lt;p>I recently published &lt;a href="https://github.com/system0x7/admixpy">AdmixPy&lt;/a> on GitHub, a fast implementation of f-statistics, qpAdm, and qpWave in Python that runs on Linux, macOS, and Windows. It works directly on the new AADR TGENO distribution format and is notably faster than ADMIXTOOLS 2 and simpler to set up. Supported input formats: EIGENSTRAT (&lt;code>.geno/.snp/.ind&lt;/code>), packed AncestryMap (&lt;code>.geno/.snp/.ind&lt;/code>), TGENO (&lt;code>.tgeno/.snp/.ind&lt;/code>), and SNP-major PLINK binary (&lt;code>.bed/.bim/.fam&lt;/code>).&lt;/p>
&lt;p>AdmixPy is implemented in Python and depends only on NumPy, SciPy, and pandas. Installation is handled through pip, and it should behave the same on every platform.&lt;/p></description></item><item><title>Fast, Transparent f4-Based Admixture Screening in R</title><link>https://popgenetics.dev/posts/deterministic-f4-solver/</link><pubDate>Tue, 03 Feb 2026 18:45:43 +0100</pubDate><guid>https://popgenetics.dev/posts/deterministic-f4-solver/</guid><description>&lt;p>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>qpadm_multi()&lt;/code> and &lt;code>qpadm_rotate()&lt;/code>, 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></description></item><item><title>How to Run and Interpret f4-Statistics in R: AADR Examples</title><link>https://popgenetics.dev/posts/interpreting-f4-tests-admixtools/</link><pubDate>Fri, 28 Nov 2025 20:43:01 +0100</pubDate><guid>https://popgenetics.dev/posts/interpreting-f4-tests-admixtools/</guid><description>&lt;p>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>
&lt;p>For more in-depth examples, see &lt;a href="https://popgenetics.dev/posts/interpreting-f4-statistics-admixpy/">Interpreting f4-Statistics with AdmixPy&lt;/a>.&lt;/p>
&lt;h2 id="what-are-f4-statistics">What are f4-statistics?&lt;/h2>
&lt;p>F4-statistics measure asymmetry in allele sharing among four populations. For four populations &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>A&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">A&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal">A&lt;/span>&lt;/span>&lt;/span>&lt;/span>, &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>B&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">B&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.05017em;">B&lt;/span>&lt;/span>&lt;/span>&lt;/span>, &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>C&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">C&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.07153em;">C&lt;/span>&lt;/span>&lt;/span>&lt;/span>, and &lt;span class="katex">&lt;span class="katex-mathml">&lt;math xmlns="http://www.w3.org/1998/Math/MathML">&lt;semantics>&lt;mrow>&lt;mi>D&lt;/mi>&lt;/mrow>&lt;annotation encoding="application/x-tex">D&lt;/annotation>&lt;/semantics>&lt;/math>&lt;/span>&lt;span class="katex-html" aria-hidden="true">&lt;span class="base">&lt;span class="strut" style="height:0.6833em;">&lt;/span>&lt;span class="mord mathnormal" style="margin-right:0.02778em;">D&lt;/span>&lt;/span>&lt;/span>&lt;/span>, the statistic is written as:&lt;/p></description></item></channel></rss>