Statistics, maths and machine learning, each one introduced through a football question.
Every advanced piece, series by series, in part order.
Football stats overlap. Principal component analysis finds the few directions that carry most of the information. On 26 seasons of Scottish Premiership data, one component built from eight stats explains 56% of the variation and tracks points per game better than any single stat.
Advanced
Part 9 of Linear Algebra Through Football
Every club's home record says something about its ground, and a lot about luck. Partial pooling lets the data decide how far to trust each club's own figure. Over 26 Scottish Premiership seasons the clubs differ far less than the raw table suggests, and Hearts still come out on top.
Advanced
Part 6 of Bayesian Thinking Through Football
Seven times since 2001/02 a Scottish Premiership side has won 7–0. A Bayesian model says each was a long shot, but also that a league should see more of them than it does. Checking the model against every score shows where it goes wrong, and how far a simple fix gets.
Advanced
Part 7 of Bayesian Thinking Through Football
Four machine learning models stalled at the same score on three numbers per match. Rate every team's attack and defence from the goals they score and let in, refit before every matchday, and a classic football model finally gets past them.
Advanced
Part 12 of Machine Learning Through Football
Elo has dials to set, from how far one result moves a rating to how much home advantage is worth. Tuned on held-back seasons it draws level with Dixon-Coles on the test seasons. The dial that mattered most changed between eras, and no honest tuning could have seen it coming.
Advanced
Part 13 of Machine Learning Through Football
A forecast can lose by being wrong about its own confidence, or by knowing less. Splitting the Brier score into calibration and resolution shows which. On five SPFL test seasons Elo is as well calibrated as the bookmakers, and loses only because they know more.
Advanced
Part 14 of Machine Learning Through Football
When one manager makes a change, the other sees it and answers. Drawing the match as a game tree and solving it from the end shows why, in some games, the side that waits does better, and why it pays to keep a substitution in hand.
Advanced
Part 4 of Game Theory Through Football
Kick the ball out for an injured player and the other side gives it back, though no law makes them. Played once, a deal like that falls apart. Played again and again, it can hold. Repeated games explain why, what tit-for-tat has to do with it, and why penalty takers should never fall into a pattern.
Advanced
Part 5 of Game Theory Through Football
Part 4 handed a squad's minutes to a solver and got the answer back. Here's what the solver does. Start at a corner, find the change that gains most, go until a rule stops you, repeat. Two steps solve the two-striker problem, and the shadow prices fall out at the end for free.
Advanced
Part 5 of Decision Science Through Football
A congested run of fixtures and a rule that nobody starts three in a row. Picking the best team every game rests the stars for the cup semi-final. Treating the whole run as one scheduling problem rests them for the right games instead, and shows why they can't play every big one.
Advanced
Part 9 of Decision Science Through Football
When the answer is a chance, you estimate it by playing the season thousands of times. On 2025/26 at halfway, a striker beats a centre-back for the bottom sides and loses for the top ones, and two simple habits stop the simulation's noise from fooling you.
Advanced
Part 11 of Decision Science Through Football
Bottom of the league with five games to play. Dynamic programming works out how to play every match by starting at the final whistle and working back, and finds that gambling on wins pays when you're two points or more behind, and never when you're level.
Advanced
Part 12 of Decision Science Through Football