Why Allele Frequencies Change Without Selection
An allele can become more or less common even when it gives its carriers no reproductive advantage. In a finite population, the alleles passed to the next generation are a random sample of the current gene pool. This generation-to-generation randomness is genetic drift. Its expected direction is not toward higher or lower frequency: under a neutral model, the next-generation frequency has the current frequency as its conditional mean. But its variance is positive, and that variance accumulates over generations.
A second source of variation arises when researchers observe only a sample of individuals or gene copies. A sample estimate may differ from the population frequency even if the population frequency is known to be unchanged. These two sources must not be conflated: drift describes a random change in the population itself, while observation error describes uncertainty about the population frequency from finite data.
The Wright–Fisher model is an idealization. \(N_e\) is the effective size governing drift, not necessarily the census number of individuals. The model also assumes a single neutral allele-frequency process; departures such as selection or migration can create systematic changes that are not represented by the drift expectation derived here.
One-Generation Expected Change and Variance
Write the one-generation change as \(\Delta p_{t+1}=p_{t+1}-p_t\). Conditional on the current population frequency, \(X_{t+1}\) is binomial with mean \(Mp_t\) and variance \(Mp_t(1-p_t)\). Dividing the count by \(M\) gives the frequency. Therefore:
Subtracting the fixed, given value \(p_t\) does not change the conditional variance, so \(E(\Delta p_{t+1}\mid p_t)=0\) and \(\operatorname{Var}(\Delta p_{t+1}\mid p_t)=p_t(1-p_t)/(2N_e)\). The conditional standard deviation of the change is thus \(\sqrt{p_t(1-p_t)/(2N_e)}\). Drift is more variable when the population is smaller and, for a fixed size, when the allele is at an intermediate frequency. The variance is zero at frequency 0 or 1, where the allele is absent or fixed and cannot change under this model.
Worked Example: One Generation of Drift
Suppose a hypothetical diploid population has \(N_e=100\), and an allele currently has frequency \(p_t=0.30\). Under the model, there are \(M=2N_e=200\) gene copies in the next generation.
The expected allele count is \(200(0.30)=60\), so the expected next-generation frequency is \(60/200=0.30\). The expected change is \(0.30-0.30=0\).
The conditional variance of the next-generation frequency is \(\operatorname{Var}(p_{t+1}\mid p_t)=0.30(0.70)/200=0.00105\). Its standard deviation is \(\sqrt{0.00105}\approx0.0324\), in allele-frequency units. Thus the model predicts no average change over this generation, but it does predict a nonzero spread of possible next-generation frequencies.
An expected change of zero does not mean the allele frequency will remain exactly constant. It means that, across repeated populations starting at the same frequency and following this model, positive and negative changes balance in expectation. A particular population follows one random trajectory.
Worked Change Versus Model-Based Variation
An observed difference can be compared with the model's one-generation standard deviation to describe its scale relative to drift. That comparison is not automatically a formal hypothesis test: a standard deviation alone is not a p-value, and the exact distribution of the change is discrete and binomial. The next example shows the arithmetic and its limited interpretation.
Worked Example: A Frequency Increase in One Generation
In a hypothetical population with \(N_e=100\), suppose the frequency is \(p_t=0.40\), and the next generation is observed to have frequency \(p_{t+1}=0.46\). The observed change is \(\Delta p=0.46-0.40=0.06\), or six percentage points.
Under the neutral Wright–Fisher model, the expected number of copies in the next generation is \(200(0.40)=80\), and the variance of the frequency is \(0.40(0.60)/200=0.0012\). The standard deviation is \(\sqrt{0.0012}\approx0.03464\).
The observed change, expressed in these standard-deviation units, is \(0.06/0.03464\approx1.732\). Equivalently, the observed count is \(200(0.46)=92\), which is 12 copies above its expected count of 80; the count standard deviation is \(\sqrt{200(0.40)(0.60)}=\sqrt{48}\approx6.928\), and \(12/6.928\approx1.732\). This describes the observed difference relative to model-based drift variation; it does not, by itself, establish that selection occurred or give a p-value.
How Variance Accumulates Across Generations
Even though the conditional expected change is zero in each generation, the population frequency becomes more variable across replicate histories as generations pass. Let the initial frequency \(p_0\) be fixed, and let \(V_t=\operatorname{Var}(p_t)\) across replicate populations at generation \(t\). The law of total variance gives a recurrence for \(V_t\).
The result also implies \(E(p_t)=p_0\) for every \(t\): the population frequency remains a martingale under this neutral model. But its variance increases toward \(p_0(1-p_0)\). As a related summary, expected heterozygosity for a biallelic locus, \(2p_t(1-p_t)\), declines over time in expectation. In fact, \(E\{2p_t(1-p_t)\}=2p_0(1-p_0)(1-1/(2N_e))^t\). These results describe the effect of finite-population sampling alone, under the assumptions stated above.
Worked Example: Ten Generations of Drift
Consider a hypothetical neutral allele with initial frequency \(p_0=0.20\) in a diploid Wright–Fisher population with \(N_e=50\). Here \(2N_e=100\), so the per-generation factor in the variance formula is \(1-1/100=0.99\).
After \(t=10\) generations, the expected frequency remains \(E(p_{10})=0.20\). The variance across replicate population histories is \(V_{10}=0.20(0.80)\{1-(0.99)^{10}\}\). Using \((0.99)^{10}\approx0.904382\), this is \(0.16(1-0.904382)=0.16(0.095618)\approx0.01530\). The corresponding standard deviation is \(\sqrt{0.01530}\approx0.1237\) in frequency units.
This standard deviation describes variation among population frequencies after ten generations, not uncertainty from a survey sample. The mean remains 0.20 even though replicate populations can have frequencies well above or below that value. The formula does not say that every population moves by the same amount, nor that any particular frequency is guaranteed.
Separating Drift From Observation-Sampling Noise
Suppose researchers sample \(m_t\) gene copies from the population at time \(t\), with each sampled copy modeled as an independent draw from that generation's population. Let \(\hat p_t\) be the sample allele frequency. Conditional on \(p_t\), the estimate has mean \(p_t\) and variance \(p_t(1-p_t)/m_t\). This sampling variation is distinct from the random change in \(p_t\) caused by reproduction.
For two independent samples taken in consecutive generations, the conditional variance of their difference includes all three contributions: drift between generations, sampling at the later time, and sampling at the earlier time. Under the model and independent sampling assumptions:
For the later sample, the second term averages its binomial sampling variance over the random next-generation frequency. Specifically, \(E\{p_{t+1}(1-p_{t+1})\mid p_t\}=p_t(1-p_t)(1-1/(2N_e))\). The equation assumes the research samples are independent of each other and of the reproduction process. Sampling gene copies without replacement from a non-negligible fraction of a finite population requires a finite-population correction instead of the independent-binomial sampling variance used here.
Worked Example: Observed Change With Two Sources of Variation
Imagine a hypothetical study samples \(m_t=m_{t+1}=100\) gene copies in each of two consecutive generations. The starting population frequency is \(p_t=0.30\), and \(N_e=1000\). Suppose the observed estimates are \(\hat p_t=0.30\) and \(\hat p_{t+1}=0.28\), an observed difference of \(-0.02\).
The drift variance for the population change is \(0.30(0.70)/2000=0.000105\). The earlier-sample variance is \(0.30(0.70)/100=0.0021\). For the later sample, the model-based expected variance is \(0.30(0.70)(1-1/2000)/100=0.209895/100=0.00209895\). Adding the terms gives a variance of \(0.000105+0.0021+0.00209895=0.00430395\); the standard deviation is \(\sqrt{0.00430395}\approx0.06560\).
The observed difference is \(-0.02/0.06560\approx-0.305\) of this combined standard deviation. The calculation illustrates that sampling noise can be much larger than drift variation in a small observational sample. It is a scale comparison under a specified model, not a test result, and it does not identify the cause of the observed difference.
Common Mistake: Treating a Sample Difference as the Population Change
A common error is to observe \(\hat p_{t+1}-\hat p_t\) and treat it as if it were exactly \(p_{t+1}-p_t\). That ignores uncertainty in both estimates. The correction is to distinguish the population frequencies from their sample estimates, then include the sampling variances when assessing how surprising the observed difference is under a model. A second error is to interpret \(E(\Delta p_{t+1}\mid p_t)=0\) as “there is no drift.” In fact, drift is precisely the random variability around that zero expected change.
Temporal data can therefore help characterize allele-frequency dynamics, but conclusions depend on the model and on how frequencies were measured. A departure from a neutral drift expectation could reflect selection, migration, mutation, population-size misspecification, sampling design, or other violations of the assumptions. The calculation alone does not distinguish among those explanations.
Check Your Understanding
Use the neutral Wright–Fisher model and distinguish population frequencies from sample estimates in your answers.
- If \(p_t=0.10\) and \(N_e=200\), what are the conditional expected next-generation frequency and variance of that frequency?
- Why can a population's frequency change even though its expected change under neutrality is zero?
- For fixed \(p_0\) and \(N_e\), what happens to the across-population variance \(V_t\) as \(t\) increases?
- Explain the difference between drift variance and the sampling variance of \(\hat p_t\).
- Why is a standardized observed difference not automatically a p-value or evidence of selection?