VIEW THIS AS

Auto mode follows the Route Engine until you choose a viewpoint.

YOU ARE HERE

ROUTE CHECK

CONNECTED TO

WHAT NEXT

Use the canonical route for this room, or HELP if you are unsure.

Why Mathematics? | Frisch–Waugh–Lovell Theorem: Partialling Out and Adjusted Slopes

Why is mathematics important when an adjusted regression coefficient needs a transparent meaning? The Frisch–Waugh–Lovell theorem says the coefficient on a target predictor in a multiple regression equals the slope obtained after removing the control-space component from both the outcome and that predictor.

Did You Know? Partial regression plots visualise the same residual-on-residual algebra, although causal meaning still requires a defensible design.

Full chapter index

Chapters 1–4 · Understand the question
  1. The adjusted-slope question
  2. The theorem
  3. Step one
  4. Step two
Chapters 5–9 · Reproduce the example
  1. Step three
  2. A worked example
  3. Projection matrices
  4. What partialling out means
  5. Same rows and same controls
Chapters 10–15 · Check assumptions
  1. Partial regression plots
  2. Collinearity
  3. Controls can change meaning
  4. Nonlinear terms
  5. Weights and fixed effects
  6. Inference
Chapters 16–20 · Explore applications
  1. A control audit
  2. A decision example
  3. One-sentence conclusion
  4. Limits
  5. Transfer to learning
Chapters 21–35 · Study and verify
  1. A spreadsheet workflow
  2. A coding workflow
  3. Applications and careers
  4. A student investigation
  5. Common misconceptions
  6. Connection to recent mathematics articles
  7. Guidance for students and parents
  8. Practice questions
  9. Frequently asked questions
  10. A reporting checklist
  11. Why the coefficient equality works
  12. Reading a partial-regression plot
  13. Control choice changes the question
  14. Final adjusted-slope audit
  15. Useful next reading

CHAPTER 1 OF 35 · Understand the question

1. The adjusted-slope question

Back to contents

Multiple regression asks how the outcome varies with a target predictor after linearly accounting for specified controls.

Contents · Next chapter

CHAPTER 2 OF 35 · Understand the question

2. The theorem

Back to contents

Oxford states that regressing residualised y on residualised target x gives the same target coefficient as the full OLS regression. Read the Oxford notes.

Contents · Previous chapter · Next chapter

CHAPTER 3 OF 35 · Understand the question

3. Step one

Back to contents

Regress the target predictor on controls and keep residual r_x, the target variation not linearly represented by controls.

rxry
-1-2
00
12
Residualised variables.

Contents · Previous chapter · Next chapter

CHAPTER 4 OF 35 · Understand the question

4. Step two

Back to contents

Regress the outcome on the same controls and keep residual r_y, the outcome variation not linearly represented by controls.

Sum rx*rySum rx squaredSlope
422
FWL slope.

Contents · Previous chapter · Next chapter

CHAPTER 5 OF 35 · Reproduce the example

5. Step three

Back to contents

Regress r_y on r_x. The slope equals the target coefficient from the full regression.

Contents · Previous chapter · Next chapter

CHAPTER 6 OF 35 · Reproduce the example

6. A worked example

Back to contents

If r_x=[−1,0,1] and r_y=[−2,0,2], the slope is sum(r_x r_y)/sum(r_x²)=4/2=2.

Contents · Previous chapter · Next chapter

CHAPTER 7 OF 35 · Reproduce the example

7. Projection matrices

Back to contents

With control matrix Z, M_Z=I−Z(Z^T Z)^−1Z^T removes the Z projection. The coefficient uses x^T M_Z y divided by x^T M_Z x.

Contents · Previous chapter · Next chapter

CHAPTER 8 OF 35 · Reproduce the example

8. What partialling out means

Back to contents

The theorem isolates linear variation orthogonal to controls. It does not physically remove people, mechanisms or causal pathways.

Contents · Previous chapter · Next chapter

CHAPTER 9 OF 35 · Reproduce the example

9. Same rows and same controls

Back to contents

Both residualisations must use the identical sample, intercept convention and control specification.

Contents · Previous chapter · Next chapter

CHAPTER 10 OF 35 · Check assumptions

10. Partial regression plots

Back to contents

Plotting r_y against r_x shows the adjusted slope and can reveal influence, nonlinearity and unusual cases.

Contents · Previous chapter · Next chapter

CHAPTER 11 OF 35 · Check assumptions

11. Collinearity

Back to contents

If controls explain nearly all target variation, r_x has little spread and the adjusted slope becomes imprecise.

Contents · Previous chapter · Next chapter

CHAPTER 12 OF 35 · Check assumptions

12. Controls can change meaning

Back to contents

Adding a mediator, collider or post-treatment variable can change the estimand and introduce bias. Algebra alone cannot choose controls.

Contents · Previous chapter · Next chapter

CHAPTER 13 OF 35 · Check assumptions

13. Nonlinear terms

Back to contents

Interactions, splines and transformations must be included consistently in the control space for the intended coefficient interpretation.

Contents · Previous chapter · Next chapter

CHAPTER 14 OF 35 · Check assumptions

14. Weights and fixed effects

Back to contents

Weighted and fixed-effects versions use the corresponding projection geometry. The simple ordinary residualisation formula must match the estimator.

Contents · Previous chapter · Next chapter

CHAPTER 15 OF 35 · Check assumptions

15. Inference

Back to contents

The coefficient equality does not mean a naive final regression always gives the correct standard error unless the full procedure and degrees of freedom are handled properly.

Contents · Previous chapter · Next chapter

CHAPTER 16 OF 35 · Explore applications

16. A control audit

Back to contents

List why each control is included, its timing and whether it could be affected by the target. Distinguish prediction controls from causal adjustment variables.

Contents · Previous chapter · Next chapter

CHAPTER 17 OF 35 · Explore applications

17. A decision example

Back to contents

To compare study time with marks after adjusting for prior attainment, residualise both on prior attainment and inspect the remaining linear association.

Contents · Previous chapter · Next chapter

CHAPTER 18 OF 35 · Explore applications

18. One-sentence conclusion

Back to contents

State that the adjusted coefficient equals the relationship between residualised target and residualised outcome under the specified linear model.

Contents · Previous chapter · Next chapter

CHAPTER 19 OF 35 · Explore applications

19. Limits

Back to contents

The theorem does not prove causal identification, fix measurement error, create overlap or protect against omitted nonlinear structure.

Contents · Previous chapter · Next chapter

CHAPTER 20 OF 35 · Explore applications

20. Transfer to learning

Back to contents

Students can use the theorem to connect projections, residuals, multiple regression and the idea of “holding controls fixed”.

Contents · Previous chapter · Next chapter

CHAPTER 21 OF 35 · Study and verify

21. A spreadsheet workflow

Back to contents

Fit both residualisation models, verify residual-control orthogonality, compute the residual slope and compare with the full-model coefficient. Keep every matrix dimension, unit and intermediate quantity visible, then verify the defining identity.

Contents · Previous chapter · Next chapter

CHAPTER 22 OF 35 · Study and verify

22. A coding workflow

Back to contents

Use tested linear-algebra routines, save the design and model formula, check rank and conditioning, and test against a hand-worked example.

Contents · Previous chapter · Next chapter

CHAPTER 23 OF 35 · Study and verify

23. Applications and careers

Back to contents

FWL supports econometrics, policy research, experimental analysis, machine learning and fixed-effects modelling.

Contents · Previous chapter · Next chapter

CHAPTER 24 OF 35 · Study and verify

24. A student investigation

Back to contents

Residualise a simulated outcome and predictor on one control, then compare with the full regression.

Contents · Previous chapter · Next chapter

CHAPTER 25 OF 35 · Study and verify

25. Common misconceptions

Back to contents

Partialling out is a linear algebra identity, not automatic causal control or a licence to select covariates after seeing results.

Contents · Previous chapter · Next chapter

CHAPTER 26 OF 35 · Study and verify

26. Connection to recent mathematics articles

Back to contents

The partial regression plot guide shows the graph. The normal-equations guide explains projection.

Contents · Previous chapter · Next chapter

CHAPTER 27 OF 35 · Study and verify

27. Guidance for students and parents

Back to contents

Students should write both residualisation equations. Parents can ask what the controls mean and when they were measured.

Contents · Previous chapter · Next chapter

CHAPTER 28 OF 35 · Study and verify

28. Practice questions

Back to contents

  • Recompute the example.
  • Explain weak residual x variation.
  • Identify a harmful control.

Contents · Previous chapter · Next chapter

CHAPTER 29 OF 35 · Study and verify

29. Frequently asked questions

Back to contents

### Are coefficients exactly equal? Yes under matched OLS setup.

### Are standard errors automatically equal? Not from every shortcut.

### Does it prove causation? No.

Contents · Previous chapter · Next chapter

CHAPTER 30 OF 35 · Study and verify

30. A reporting checklist

Back to contents

Report the target, model, data unit, assumptions, calculation, diagnostics, validation and practical threshold. Separate descriptive evidence from causal interpretation.

Contents · Previous chapter · Next chapter

CHAPTER 31 OF 35 · Study and verify

31. Why the coefficient equality works

Back to contents

The residual maker M_Z removes every component in the control space. Because r_x=M_Zx is orthogonal to Z, multiplying the full normal equations by r_x isolates the target coefficient: r_x^Ty=beta_hat r_x^Tx. Replacing y with M_Zy leaves the numerator unchanged, giving the residual-on-residual slope. The equality is exact algebra for matched OLS specifications, not an approximation.

Contents · Previous chapter · Next chapter

CHAPTER 32 OF 35 · Study and verify

32. Reading a partial-regression plot

Back to contents

Each point represents what remains of the target predictor and outcome after their separate linear projections on controls. The fitted slope is the adjusted coefficient. Large horizontal residuals identify observations with unusual target values relative to controls; large vertical residuals show unusual outcomes. One influential point can dominate both. Label the plot as adjusted association rather than causal effect.

Contents · Previous chapter · Next chapter

CHAPTER 33 OF 35 · Study and verify

33. Control choice changes the question

Back to contents

Controls are not neutral decorations. Adjusting for prior attainment asks about study time among students with similar modelled prior attainment. Adding motivation, if measured after an intervention, may block part of the effect or introduce selection. State timing and purpose for every control, and use causal knowledge before algebra when the goal is causal interpretation.

Contents · Previous chapter · Next chapter

CHAPTER 34 OF 35 · Study and verify

34. Final adjusted-slope audit

Back to contents

Confirm that both residualisations used identical observations, weights, controls and transformations. Check that r_x retains meaningful variation and that the residual-on-residual slope matches the full model. Then describe the coefficient as conditional on the stated linear control space. If causal language is desired, add the design assumptions separately rather than treating the theorem as identification.

Contents · Previous chapter · Next chapter

CHAPTER 35 OF 35 · Study and verify

35. Useful next reading

Back to contents

Continue through the Mathematics Learning Hub and reproduce the worked example before using software.

Contents · Previous chapter · Mathematics Learning Hub

Extended practice laboratory

Practice case 1: Choose target

Setup: Start from the article’s FWL worked example for case 1. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 2: Choose controls

Setup: Start from the article’s FWL worked example for case 2. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 3: Fit target controls

Setup: Start from the article’s FWL worked example for case 3. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 4: Save rx

Setup: Start from the article’s FWL worked example for case 4. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 5: Fit outcome controls

Setup: Start from the article’s FWL worked example for case 5. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 6: Save ry

Setup: Start from the article’s FWL worked example for case 6. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 7: Regress ry on rx

Setup: Start from the article’s FWL worked example for case 7. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 8: Compare full coefficient

Setup: Start from the article’s FWL worked example for case 8. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 9: Check same rows

Setup: Start from the article’s FWL worked example for case 9. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 10: Check intercept

Setup: Start from the article’s FWL worked example for case 10. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 11: Inspect rx spread

Setup: Start from the article’s FWL worked example for case 11. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 12: Inspect plot

Setup: Start from the article’s FWL worked example for case 12. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 13: Add control

Setup: Start from the article’s FWL worked example for case 13. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 14: Remove control

Setup: Start from the article’s FWL worked example for case 14. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 15: Add interaction

Setup: Start from the article’s FWL worked example for case 15. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 16: Check collinearity

Setup: Start from the article’s FWL worked example for case 16. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 17: Check influence

Setup: Start from the article’s FWL worked example for case 17. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 18: Check standard error

Setup: Start from the article’s FWL worked example for case 18. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 19: Use weights

Setup: Start from the article’s FWL worked example for case 19. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 20: Add fixed effects

Setup: Start from the article’s FWL worked example for case 20. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 21: Audit timing

Setup: Start from the article’s FWL worked example for case 21. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 22: Reject causal claim

Setup: Start from the article’s FWL worked example for case 22. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 23: Reject physical removal

Setup: Start from the article’s FWL worked example for case 23. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 24: Report controls

Setup: Start from the article’s FWL worked example for case 24. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.

Practice case 25: Write conclusion

Setup: Start from the article’s FWL worked example for case 25. Task: Change the named quantity, recompute dependent values and compare with the original.

Check: Check the defining identity, preserve units and state one diagnostic or validation step before interpretation. Show the arithmetic, name the response and predictor units, and separate the numerical result from the claim it supports. Then vary one defensible assumption, calculate again and explain whether the conclusion changed because of the data, the fitted model or the validation purpose. Finish with one compact table or graph that could reveal a failure hidden by the summary.