Why the Inverse Mills Ratio Appears
When an estimate is reported only after it crosses a threshold, its distribution among reported estimates differs from its unconditional sampling distribution. Even if an estimator is unbiased before selection, its conditional mean among threshold-crossing results will generally be shifted. The inverse Mills ratio expresses that shift for a normal estimate in a compact form. It is useful to know not only how to evaluate the ratio, but what its inputs mean: the standardized distance from the true mean to the selection threshold.
This tutorial considers a single normally distributed estimate subject to a fixed threshold. It does not account for dependence among several selected estimates or for a sequence of selection decisions. Those features require a selection event more complicated than one threshold crossing.
The denominator \(1-\Phi(a)\) is the probability of passing the threshold, \(P(X>c)\). The numerator is the standard normal density evaluated at the standardized threshold. The ratio itself is dimensionless; multiplying it by \(\sigma\), which has the same units as \(X\), gives the conditional-mean shift in the original units.
Conditional Mean and Correction
For upper-threshold selection, the selected estimate has conditional mean \(E[X\mid X>c]=\theta+\sigma\lambda_U(a)\). Thus the conditional bias relative to \(\theta\) is positive and equals \(\sigma\lambda_U(a)\). If \(\theta\), \(\sigma\), and \(c\) are specified, this is a direct calculation. In practice \(\theta\) is usually unknown, so a plug-in correction replaces it in the standardized threshold with an estimate. That substitution is an approximation, not a guarantee that the corrected estimate is unbiased.
The standardized threshold \(a\) describes how far \(c\) is from \(\theta\) in standard deviation units. For example, \(a=1.5\) means that the threshold is 1.5 standard deviations above the mean. It does not mean that the selected estimate is 1.5 units above the mean. The factor \(\sigma\) is needed to convert the dimensionless ratio back into the estimate's units.
Calculating the Upper-Tail Correction
Worked Example: A Threshold 1.5 Standard Deviations Above the Mean
Suppose a hypothetical treatment-effect estimate \(X\), measured in points, follows \(N(\theta,0.4^2)\). For a specified value of \(\theta\), the selection threshold \(c\) is 0.60 points above \(\theta\). Calculate the conditional-mean correction among estimates with \(X>c\).
Check the model and event. The calculation assumes a normal estimate with standard deviation \(\sigma=0.4\) points and selection exactly when \(X>c\). The threshold is fixed, and the given distance \(c-\theta=0.60\) points is in the same units as \(\sigma\).
First standardize the threshold: \(a=(c-\theta)/\sigma=0.60/0.4=1.5\). Standard normal values are \(\phi(1.5)\approx0.12952\) and \(1-\Phi(1.5)\approx0.06681\). Therefore, \(\lambda_U(1.5)=0.12952/0.06681\approx1.9387\).
The conditional bias is \(\sigma\lambda_U(a)=0.4(1.9387)\approx0.7755\) points. Thus, among estimates exceeding this threshold, the conditional mean is approximately \(\theta+0.7755\) points. The selected estimates exceed a threshold only 0.60 points above \(\theta\), yet their conditional average is farther above \(\theta\); estimates just above the threshold and estimates far above it together produce this conditional average.
The correction can be larger than the threshold's distance above the mean. In the example, \(a=1.5\), while \(\lambda_U(a)\approx1.9387\). This is not an inconsistency: conditioning on \(X>c\) retains the entire upper tail, including estimates well above \(c\).
Worked Example: Converting a Standardized Threshold Into Points
In a second hypothetical normal-estimate setting, suppose the selection threshold is \(0.80\) standard deviations above the mean and the estimate's standard deviation is \(0.50\) points. Calculate the conditional-mean shift.
Check the inputs. The stated standardized threshold is \(a=0.80\), and \(\sigma=0.50\) points. The threshold is above the mean, so selection is the upper-tail event \(X>c\); the upper-tail formula applies.
Using \(\phi(0.80)\approx0.28969\) and \(1-\Phi(0.80)\approx0.21186\), the ratio is \(\lambda_U(0.80)=0.28969/0.21186\approx1.3674\). Multiply by the estimate's standard deviation: \(\sigma\lambda_U(a)=0.50(1.3674)\approx0.6837\) points.
The result means that the conditional mean of estimates exceeding the threshold is about 0.6837 points above \(\theta\). The ratio is unit-free; the correction is in points. Multiplying a rounded ratio by \(\sigma\) should agree with the displayed arithmetic, so retain enough digits in intermediate values to avoid apparent discrepancies.
Using the Ratio in a Plug-In Correction
The theoretical formula depends on \(\theta\), which is generally unknown. A plug-in calculation uses the observed estimate \(x\) in its place: \(\hat a=(c-x)/\sigma\), followed by a correction \(\sigma\lambda_U(\hat a)\). For upper-tail selection, the corresponding corrected estimate is \(x-\sigma\lambda_U(\hat a)\). This implements the plug-in approach to selection correction: it estimates the conditional shift using the observed estimate in the standardized threshold.
The subtraction sign follows from the direction of the theoretical conditional bias. Conditional on crossing an upper threshold, the estimate tends to be high relative to its mean, so the estimated shift is subtracted. However, \(\hat a\) uses the selected observation itself; it is not the unknown true standardized threshold \(a\). The resulting correction should therefore be described as a plug-in estimate, not as the exact amount of bias for that realized estimate.
Worked Example: A Plug-In Correction for an Observed Estimate
Suppose a hypothetical estimate is \(x=1.50\) points, the reporting threshold is \(c=1.20\) points, and its normal-model standard deviation is \(\sigma=0.50\) points. Assume estimates are reported when \(X>c\). Calculate the plug-in correction.
Check the selection condition. The observed value \(1.50\) points exceeds \(1.20\) points, so it satisfies the stated upper-threshold rule. The standard deviation is positive and expressed in the same units as \(x\) and \(c\).
The plug-in standardized threshold is \(\hat a=(c-x)/\sigma=(1.20-1.50)/0.50=-0.60\). The negative sign is appropriate: the observed estimate lies above the threshold, so the threshold is below the plug-in value used for \(\theta\).
Using \(\phi(-0.60)\approx0.33322\) and \(1-\Phi(-0.60)=\Phi(0.60)\approx0.72575\), \(\lambda_U(-0.60)=0.33322/0.72575\approx0.4591\). The estimated shift is \(0.50(0.4591)\approx0.2296\) points. The plug-in corrected estimate is therefore \(1.50-0.2296=1.2704\) points.
This value is the result of the stated plug-in rule. It is not a claim that the true conditional bias is exactly 0.2296 points, because the true \(\theta\) is unknown and the substitution \(x\) for \(\theta\) is approximate.
Lower-Threshold Selection and Sign
If selection instead requires \(X<c\), the correction changes direction. With the same \(a=(c-\theta)/\sigma\), the lower-tail inverse Mills ratio is \(\lambda_L(a)=\phi(a)/\Phi(a)\), and the conditional mean is \(E[X\mid X<c]=\theta-\sigma\lambda_L(a)\). The conditional bias is negative: selected values lie, on average, below \(\theta\).
Worked Example: Selection Below a Threshold
Suppose a hypothetical estimate \(X\) has distribution \(N(10,2^2)\) in a measurement scale, and it is selected when \(X<9\). Find its conditional mean under this model.
Check the model and event. The estimate is normal with \(\theta=10\), \(\sigma=2\), and the event is a lower-tail threshold. The threshold, mean, and standard deviation use the same measurement scale.
Standardize the threshold: \(a=(9-10)/2=-0.50\). The lower-tail ratio is \(\lambda_L(-0.50)=\phi(-0.50)/\Phi(-0.50)\approx0.35207/0.30854\approx1.1411\).
The conditional shift is \(-\sigma\lambda_L(a)=-2(1.1411)\approx-2.2822\) units. Therefore, \(E[X\mid X<9]=10-2.2822=7.7178\) units. The result is below both the unconditional mean of 10 and the threshold of 9, as expected for this lower-tail conditioning.
Justification, Checks, and Limitations
The formula follows directly by standardizing the estimate. Write \(Z=(X-\theta)/\sigma\), so \(Z\sim N(0,1)\), and \(X>c\) is equivalent to \(Z>a\). The conditional mean of \(X\) is \(\theta+\sigma E[Z\mid Z>a]\). Since the standard normal density satisfies \(\phi'(z)=-z\phi(z)\), integrating gives the numerator of that conditional expectation:
The denominator is essential: dividing by \(P(Z>a)=1-\Phi(a)\) changes an unconditional tail integral into a conditional mean. For lower-tail selection, the same density identity gives \(\int_{-\infty}^a z\phi(z)\,dz=-\phi(a)\); dividing by \(\Phi(a)\) yields the negative shift stated above.
A useful diagnostic is to check the direction and units. For finite \(a\), both \(\phi(a)\) and \(1-\Phi(a)\) are positive, so \(\lambda_U(a)>0\). Thus the upper-tail correction is positive before subtraction, and \(\sigma\lambda_U(a)\) has the units of the estimate. Also, the conditional mean given \(X>c\) must exceed \(c\); a computed value below the threshold signals a sign, tail-probability, or arithmetic error.
For thresholds far into the upper tail, \(1-\Phi(a)\) can be very small. Rounding that probability too aggressively can make the ratio inaccurate or even produce division by zero in software. Use a reliable normal survival-function calculation or a numerically stable log-tail calculation for extreme thresholds, and retain sufficient precision in intermediate values. A second check is that the ratio should be positive, and that the correction should be in the same units as \(\sigma\).
The inverse Mills ratio gives a closed-form result under a normal model with a single fixed threshold. Direct integration or simulation can be alternatives when the distribution or selection event is more complicated, though simulation adds Monte Carlo error and requires the model to be specified. The plug-in correction is distinct from the theoretical correction: the latter uses the true \(\theta\), whereas the former substitutes an estimate. Neither formula by itself accounts for a nonnormal sampling distribution, a threshold chosen adaptively from the same data, or selection among correlated arms.
Common Mistakes
- Using the wrong tail. For selection when \(X>c\), the denominator is \(1-\Phi(a)\), not \(\Phi(a)\). For selection when \(X<c\), it is \(\Phi(a)\).
- Leaving out \(\sigma\). The inverse Mills ratio is dimensionless. Multiplying by \(\sigma\) produces the correction in the estimate's units.
- Reversing the correction's sign. Upper-tail selection produces a positive conditional shift, which is subtracted in a plug-in correction. Lower-tail selection produces a negative shift.
- Interpreting a plug-in value as exact. Substituting \(x\) for \(\theta\) estimates the standardized threshold; it does not reveal the true conditional bias.
- Using a rounded denominator in an extreme tail. A near-zero rounded survival probability can distort the ratio. Use a stable tail-probability computation and check the result's scale and direction.
Check Your Understanding
Answer each question, then compare with the brief solutions below.
- If \(a=1\), what does the standardized threshold say about \(c\), \(\theta\), and \(\sigma\)?
- For upper-threshold selection, why must the correction \(\sigma\lambda_U(a)\) be positive?
- An estimate has \(\sigma=0.30\) units and \(a=0\). Given \(\phi(0)\approx0.39894\) and \(1-\Phi(0)=0.5\), calculate the conditional shift.
- For selection when \(X<c\), state the lower-tail ratio and the sign of the conditional shift.
- In a plug-in calculation, what is the interpretation of \(\hat a=(c-x)/\sigma\), and why is the resulting correction not exact?
Solutions. (1) The threshold is one standard deviation above the mean: \(c=\theta+\sigma\). (2) The density, upper-tail probability, and standard deviation are all positive, so their ratio times \(\sigma\) is positive. (3) \(\lambda_U(0)=0.39894/0.5=0.79788\), so the shift is \(0.30(0.79788)\approx0.2394\) units. (4) \(\lambda_L(a)=\phi(a)/\Phi(a)\), and the shift is \(-\sigma\lambda_L(a)\), which is negative. (5) It is the threshold standardized using the observed estimate as a plug-in value for the unknown mean; because that substitution is approximate, the result estimates rather than exactly gives the true conditional shift.