Day 53. Adjustment Sets & Bad Controls
Not every covariate belongs in the regression. Confounders must be in; outcome predictors help precision; instruments hurt precision and amplify bias; mediators, colliders, M-structures and descendants of the outcome bias the estimate. Among valid sets, some are more precise than others.
- ●Classify a candidate control as good, neutral (precision-helping or precision-hurting) or bad, from the DAG.
- ●Quantify the precision effects of outcome predictors and instruments in a linear model.
- ●Derive the biases from controlling for a confounded mediator, an M-structure collider and an instrument with unobserved confounding.
- ●Choose a precise admissible set and avoid the "Table 2 fallacy".
Theory
A catalogue of controls
Let be the treatment and the outcome. For a candidate control (and possibly unobserved ):
| Structure | Verdict | Why |
|---|---|---|
| good | blocks a back-door path | |
| good | blocks the path through (a proxy) | |
| only | neutral, helps precision | explains outcome variance |
| only | neutral, hurts precision | removes treatment variation |
| , | bad: bias amplification | removes clean variation, keeps confounded variation |
| bad (for the total effect) | blocks part of the effect | |
| , or | bad | conditioning on a collider |
| bad: M-bias | pre-treatment collider | |
| bad | selection on the outcome |
"Pre-treatment" is not the same as "safe": the M-structure collider can be measured before treatment.
Precision in a linear model
In estimated by OLS, Frisch–Waugh–Lovell gives
- An outcome predictor shrinks the numerator: more precision.
- A treatment predictor shrinks the denominator: less precision (the variance inflation factor ).
Choosing among admissible sets
Several sets may satisfy the back-door criterion. In linear models the asymptotically most precise one is the optimal adjustment set: roughly, the parents of (and of mediators on the causal path) that are not themselves descendants of , excluding . Practical rule: prefer confounders close to the outcome over confounders close to the treatment.
The Table 2 fallacy
A regression designed to estimate the effect of has coefficients on the controls too. They are generally not causal effects of the controls: may be a mediator or collider for them. Report only the coefficient the design was built for.
Part 1 · Warm-up
Exercise 1 · Classify the controls
For the effect of on , classify : (a) , ; (b) , ; (c) only; (d) only, no confounding; (e) .
Show solution
Step 1. (a) Confounder: good.
Step 2. (b) Collider: bad.
Step 3. (c) Outcome predictor: neutral, improves precision.
Step 4. (d) Instrument-like: neutral for bias, reduces precision.
Step 5. (e) Mediator: bad for the total effect.
Exercise 2 · Precision from an outcome predictor
, with , , . By what factor does including reduce the standard error of ?
Show solution
Step 1. Without : residual variance .
Step 2. With : residual variance 1.
Step 3. since they are independent, so the denominator is unchanged.
Answer: variance falls by a factor of 5; the SE by .
Exercise 3 · Precision lost to an instrument
with , and affects only through (no confounding). By what factor does controlling for raise ?
Show solution
Step 1. and .
Step 2. The residual variance of is unchanged (Z has no direct effect on ).
Answer: the variance doubles (); the SE rises by .
Exercise 4 · M-bias
In , , , , , with unobserved, is admissible? Is ?
Show solution
Step 1. The only back-door path is , with a collider at .
Step 2. Given it is blocked: is admissible.
Step 3. Given it opens: is not admissible, although is pre-treatment and correlated with both and .
Exercise 5 · Controlling for a consequence of the outcome
Why is it a mistake to control for when (for example, = hospital discharge diagnosis, = disease severity)?
Show solution
Step 1. : is a descendant of , violating the back-door condition.
Step 2. Conditioning on partially conditions on itself: among units with the same , variation in is restricted, which attenuates (or distorts) the estimated effect.
Answer: a descendant of the outcome is a bad control.
Part 2 · Proofs
Exercise 6 · The variance formula
In with homoskedastic , show , where is residualised on , and conclude the approximation in the theory.
Show solution
Step 1. FWL: .
Step 2. Substitute ; since is orthogonal to and , .
Step 3. .
Step 4. for large .
Exercise 7 · Bias amplification
Let and , with independent, , , and unobserved. Show the bias of is without and with .
Show solution
Step 1. Without : the slope is (Day 50, Exercise 8).
Step 2. With : by FWL, use .
Step 3. Slope , and .
Step 4. So the bias is , which is larger: controlling for removed clean variation () from the denominator.
Exercise 8 · Outcome predictors do not change the estimand
Assume is admissible and is independent of and affects only . Prove that is admissible.
Show solution
Step 1. Condition 1: has no parents among the descendants of (it is independent of with arrows only into ), so it is not a descendant of .
Step 2. Condition 2: every path through is with as an endpoint-adjacent node; has no other neighbours, so no back-door path from passes through .
Step 3. Conditioning on cannot open a path: is not a collider or a descendant of one on any – path.
Step 4. Paths blocked by remain blocked.
Exercise 9 · Controlling for a confounded mediator
Let and , with independent, , . Show that the coefficient on in the regression of on is , with .
Show solution
Step 1. Given and , we know . By normal (or linear) projection, .
Step 2. .
Step 3. Collect terms: .
Answer: the coefficient is the direct effect only if (no mediator–outcome confounding). Otherwise is a collider on .
Exercise 10 · The size of M-bias
In Exercise 4 with linear equations , , (all disturbances independent with variance 1), show that controlling for adds bias .
Show solution
Step 1. .
Step 2. , , ; , .
Step 3. Projection coefficients: .
Step 4. The coefficient on in is .
Answer: bias ; with it is −0.2. Usually modest, but real.
Part 3 · Applied
Exercise 11 · Medicaid expansion and mortality
You study the effect of a state's Medicaid expansion on county mortality . Classify each candidate control: (a) pre-expansion county poverty rate; (b) post-expansion insurance coverage; (c) post-expansion number of hospital closures, affected by both expansion and by local death rates through hospital finances; (d) county rainfall; (e) pre-expansion mortality trend.
Show solution
Step 1. (a) Affects expansion decisions and mortality: confounder, include.
Step 2. (b) Mediator: expansion works through coverage. Exclude for the total effect.
Step 3. (c) Descendant of and of : collider-like and a descendant of the outcome. Exclude.
Step 4. (d) Unrelated to expansion; weakly predicts mortality at most. Harmless; include only if it explains outcome variance.
Step 5. (e) Strong predictor of mortality and plausibly of expansion: include (good for bias and precision).
Exercise 12 · A cash-transfer RCT
In a randomised cash-transfer trial with 2,000 households, baseline consumption explains 60% of the variance of endline consumption. A field officer also proposes controlling for the household's distance to the payment point, which affected take-up but not consumption. What happens to the standard error of the effect of being offered the transfer with each control?
Show solution
Step 1. Offer is randomised, so both controls leave the estimand unchanged.
Step 2. Baseline consumption: residual variance falls to 40%; SE falls by , i.e. 37% smaller.
Step 3. Distance: it predicts take-up, not the random offer itself, and not consumption; it neither helps nor hurts the offer coefficient (beyond a tiny degrees-of-freedom cost).
Answer: control for baseline consumption; distance is irrelevant for the intention-to-treat effect. (If the treatment were take-up rather than the offer, distance would be an instrument and should not be a control.)
Exercise 13 · Bias amplification in returns to schooling
Schooling , where is distance to the nearest college (standardised, negative effect coded positive), unobserved ability (variance 1), ; log wage . Compute the ability bias with and without controlling for .
Show solution
Step 1. Use Exercise 7 with , , , .
Step 2. Without : .
Step 3. With : .
Answer: controlling for distance raises the bias from 3.8 to 5.0 points (estimated return 11.8% to 13.0% instead of 8%). Distance belongs in an IV analysis (Phase 5), not in the control list.
Exercise 14 · Choosing the most precise admissible set
In a smoking-cessation study, (age) (counselling), (baseline lung function), (lung function at one year), . Both and are admissible. In the simulation below, which gives the smaller standard error, and why?
Show solution
Step 1. Back-door path: , blocked by (fork) or by (chain).
Step 2. is a parent of : controlling for it removes the large outcome variance it explains, shrinking the numerator of the variance formula.
Step 3. is only a noisy proxy for , so : more treatment variation is kept, enlarging the denominator.
Step 4. does the opposite on both counts: it predicts strongly and only through .
Answer: is more precise; the simulation shows an SE ratio of about 0.38. Prefer confounders near the outcome.
Exercise 15 · The Table 2 fallacy
A paper estimates the effect of air pollution on asthma admissions , adjusting for temperature and income (both confounders; temperature also affects pollution). Its table reports coefficients for , and . A journalist writes "temperature has no effect on asthma once pollution is accounted for". What is wrong?
Show solution
Step 1. The regression was designed so that is an admissible set for .
Step 2. For temperature, pollution is a mediator (). Conditioning on blocks that channel, so the coefficient is at most a direct effect, and possibly confounded by variables not needed for .
Answer: the coefficient is not the total effect of temperature; only the coefficient on has the causal interpretation the design supports.
Verify in Python
import numpy as np
rng = np.random.default_rng(53)
def coef_se(y, X):
X = np.column_stack([np.ones(len(y))] + X)
b, *_ = np.linalg.lstsq(X, y, rcond=None); r = y - X @ b
V = r @ r / (len(y) - X.shape[1]) * np.linalg.inv(X.T @ X)
return b[1], np.sqrt(V[1, 1])
n = 200_000
# Exercise 7 / 13: bias amplification
D = rng.normal(size=n); A = rng.normal(size=n)
S = .8 * D + A + rng.normal(size=n); Y = .08 * S + .10 * A + rng.normal(size=n)
print("schooling: no control %.4f, control for distance %.4f (truth 0.08)" % (coef_se(Y, [S])[0], coef_se(Y, [S, D])[0]))
# Exercise 9: confounded mediator (a=1, b=1, c=1, d=0.5, vU=vM=1 -> coef 0.5 - 0.5 = 0)
X = rng.normal(size=n); U = rng.normal(size=n)
M = X + U + rng.normal(size=n); Y = .5 * X + M + U + rng.normal(size=n)
print("coef on X given M: %.3f (direct effect 0.5, formula 0.0)" % coef_se(Y, [X, M])[0])
# Exercise 10: M-bias with alpha = beta = 1 (tau = 1)
U1, U2 = rng.normal(size=n), rng.normal(size=n)
X = U1 + rng.normal(size=n); M = U1 + U2 + rng.normal(size=n); Y = X + U2 + rng.normal(size=n)
print("M-bias: without M %.3f, with M %.3f (bias -0.2)" % (coef_se(Y, [X])[0], coef_se(Y, [X, M])[0]))
# Exercise 14: precision of two admissible sets, 400 patients, 2000 replications
est = {"A": [], "B": []}
for _ in range(2000):
m = 400
A = rng.normal(size=m); X = (1.5 * A + rng.normal(size=m) > 0).astype(float)
B = A + rng.normal(size=m); Y = 1.0 * X + 2 * B + rng.normal(size=m)
est["A"].append(coef_se(Y, [X, A])[0]); est["B"].append(coef_se(Y, [X, B])[0])
sa, sb = np.std(est["A"]), np.std(est["B"])
print(f"mean A {np.mean(est['A']):.3f}, B {np.mean(est['B']):.3f}; SD A {sa:.3f}, B {sb:.3f}, ratio {sb / sa:.2f}")
Key takeaways
- Include confounders (or their proxies); add strong outcome predictors for precision.
- Leave out instruments, mediators, colliders (including pre-treatment M-colliders) and descendants of the outcome.
- Among admissible sets, those closer to the outcome are more precise; coefficients on controls are not causal by default.
Simulation Lab: Good & Bad Controls
Open full screen →Eight structures from confounder to M-bias: bias and standard error of the treatment coefficient with and without the control.
Bad: amplifies the bias from U.
Exact population regressions from linear models (unit-variance disturbances), with 95% intervals for a sample of n. U nodes (dashed) are unobserved. Compare the coefficient on X without and with Z against the true total effect.