Welcome to Regression Alert, your weekly guide to using regression to predict the future with uncanny accuracy.
For those who are new to the feature, here's the deal: every week, I dive into the topic of regression to the mean. Sometimes I'll explain what it really is, why you hear so much about it, and how you can harness its power for yourself. Sometimes I'll give some practical examples of regression at work.
In weeks where I'm giving practical examples, I will select a metric to focus on. I'll rank all players in the league according to that metric, and separate the top players into Group A and the bottom players into Group B. I will verify that the players in Group A have outscored the players in Group B to that point in the season. And then I will predict that, by the magic of regression, Group B will outscore Group A going forward.
Crucially, I don't get to pick my samples (other than choosing which metric to focus on). If the metric I'm focusing on is touchdown rate, and Christian McCaffrey is one of the high outliers in touchdown rate, then Christian McCaffrey goes into Group A and may the fantasy gods show mercy on my predictions.
Most importantly, because predictions mean nothing without accountability, I track the results of my predictions over the course of the season and highlight when they prove correct and also when they prove incorrect. Here's a list of my predictions from 2020 and their final results. Here's the same list from 2019 and their final results, here's the list from 2018, and here's the list from 2017. Over four seasons, I have made 30 specific predictions and 24 of them have proven correct, a hit rate of 80%.
The Scorecard
In Week 2, I broke down what regression to the mean really is, what causes it, how we can benefit from it, and what the guiding philosophy of this column would be. No specific prediction was made.
In Week 3, I dove into the reasons why yards per carry is almost entirely noise, shared some research to that effect, and predicted that the sample of backs with lots of carries but a poor per-carry average would outrush the sample with fewer carries but more yards per carry.
In Week 4, I talked about yard-to-touchdown ratios and why they were the most powerful regression target in football that absolutely no one talks about, then predicted that touchdowns were going to follow yards going forward (but the yards wouldn't follow back).
In Week 5, we looked at ten years worth of data to see whether early-season results better predicted rest-of-year performance than preseason ADP and we found that, while the exact details fluctuated from year to year, overall they did not. No specific prediction was made.
In Week 6, I taught a quick trick to tell how well a new statistic actually measures what you think it measures. No specific prediction was made.
In Week 7, I went over the process of finding a good statistic for regression and used team rushing vs. passing touchdowns as an example.
In Week 8, I talked about how interceptions were an unstable statistic for quarterbacks, but also for defenses.
In Week 9, we took a look at Ja'Marr Chase's season so far. He was outperforming his opportunities, which is not sustainable in the long term, but I offered a reminder that everyone regresses to a different mean and the "true performance level" that Ja'Marr Chase will trend towards over a long timeline is likely a lot higher than for most other receivers. No specific prediction was made.
Statistic for regression | Performance before prediction | Performance since prediction | Weeks remaining |
---|---|---|---|
Yards per Carry | Group A had 10% more rushing yards per game | Group B has 4% more rushing yards per game | None (Win!) |
Yards per Touchdown | Group A scored 9% more fantasy points per game | Group B scored 13% more fantasy points per game | None (Win!) |
Passing vs. Rushing TDs | Group A scored 42% more RUSHING TDs | Group A is scoring 54% more PASSING TDs | 1 |
Defensive Interceptions | Group A had 33% more interceptions | Group B has 65% more interceptions | 2 |
Three weeks since we observed the rushing to passing touchdown ratio of the seven run-heaviest teams in the league, their ratios have completely flipped and then some. Our teams have passed for seven more touchdowns than they've rushed for so far; with seven teams in the sample, they'd need to average one more rushing touchdown than passing touchdown this week to pull even again.
As for defensive interceptions, our high-interception defenses have fallen from 1.29 interceptions per game down to 0.89 interceptions per game, while our low-interception group has risen from 0.50 to 0.85. With both samples intercepting passes at a near-identical rate, Group B has taken a commanding lead in total interceptions from sheer volume.
As an aside, while no specific prediction was made last week, I talked about how Ja'Marr Chase couldn't keep overperforming his usage, but given how talented he was, he'd likely put up stronger usage going forward. Recent weeks certainly support the hypothesis.
Ja'Marr Chase fantasy scoring
— Kevin Cole (@KevinColePFF) November 8, 2021
Weeks 1-7
PPR: 146.2 (3rd)
Expected (based on target locations): 90.7 (22nd)
Diff: +55.5 (1st)
Weeks 8-9
PPR: 24.0 (16th)
Expected: 48.5 (1st)
Diff: -24.5 (last)
tldr: Ja'Marr Chase is getting more valuable targets the last two week but worse performance. Good for the future outlook
— Kevin Cole (@KevinColePFF) November 8, 2021
Luck Be a Lady...
I often like to stress that outcomes are the result of a combination of intrinsic factors and random chance. If a running back has a huge rushing day, there are plenty of contributors, including how fast that running back is, how good he is at breaking tackles, how well he read his blocking, how good the defense he faced was, how well his teammates were playing, whether the other running backs on the roster were healthy or hurt, what situations he was given his opportunities in (you can't run for 80 yards when you're getting a carry at the 50-yard line, after all), and numerous other factors.
Some of those factors are pretty stable, usually because they're intrinsic to the player himself. Guys who are good at breaking tackles in one game tend to be good at breaking tackles in the next game, too. Other factors are essentially just random chance. Players very rarely face the same defense in consecutive weeks, for instance.
The more an outcome is driven by intrinsic factors, the less it will regress between samples. The best example of this would be something that is 100% intrinsic, like height. If you take the five tallest players and the five shortest players in one sample, they're going to remain the five tallest and five shortest players in the next sample. They're not going to "regress" until they're all league-average height or anything. The gap between the best and the worst remains static from one sample to the next. Height is entirely intrinsic.
On the other hand, the more a factor is driven by luck, the more it will regress between samples. The best example would be something that is 100% luck-based, like correctly calling the pre-game coin flip. If one team has won eight consecutive coin flips and another team has lost eight consecutive coin flips, they'd still have the exact same expectation for how many of the next eight coin flips were likely to go in their favor. The gap between the "best" and the "worst" disappears between samples. Coin flips are entirely chance.
There's not really anything interesting in football that isn't a blend of intrinsic factors and random chance, though. As a result, from one sample to the next the gap doesn't stay the same, but it doesn't disappear entirely, either. Instead it usually just shrinks a bit. (How much depends entirely how the ratio of intrinsic factors to random chance.)
The same is not true for fantasy football. In fact, there is a very common and very important factor in head-to-head fantasy leagues that is entirely driven by random chance. And because it is entirely driven by random chance, it should fully and completely regress to the mean across different samples.
That factor is schedule luck.
What is Schedule Luck?
Say you play in a 10-team league and have a very good squad. In one week, you post the second-highest score in the entire league. The most likely outcome is that you will win your matchup.
But that outcome isn't guaranteed. There are nine possible teams you can play (since you can't play yourself), and there are eight matchups that will result in you getting a win and one matchup that results in you getting a loss (if you're unfortunate enough to face off against the highest-scoring team). You could say that finishing with the second-highest weekly score should give you 8/9ths of a win in expectation. Or if you finished with the 2nd-highest score in a million different weeks, you should win 8/9ths of the time.
Some sites will track these odds in the form of "all-play records" (which is what your record would be if you played every team every week). And over a long enough timeline, your actual winning percentage and all-play winning percentage should converge.
But over short timelines, weird things can happen. I've seen a team finish with the 2nd-best score in three consecutive weeks and lose all three games. In expectation, that team "should" have won an average of 2.667 games. In actuality, that team won zero. They underperformed expectations by 2.667 wins.
Now, it's awful to lose wins in that manner. (And really nice to be on the other side of the coin and "gain" wins in terrible weeks thanks to schedule luck.) At the end of the year when playoff seedings are decided, those "extra" wins and losses are a big deal.
But schedule luck is entirely luck and you should expect underperformance and overperformance to be completely uncorrelated from one sample to the next. Just like sometimes NFL teams win a lot of coin tosses in a row, sometimes fantasy teams string together lucky wins or bad beats. But neither factor predicts anything going forward. In expectation, every team's actual win/loss record is most likely to line up with their all-play record going forward.
Let's use a concrete example to drive this home. Every year, Footballguys hosts a few leagues for staff members to compete against each other. This year we have 38 participants. As it happens, I'm currently the only team with 8 wins through 9 games. Bully!
But while I'm first in actual record, I'm 6th in expected record, winning 65.7% of all possible matchups. Based on all-play record, I'd expect to have 5.91 wins through nine weeks, which means I've overperformed by 2.09 wins, which happens to be the widest margin on staff.
Now I'm pretty happy to rank 6th out of 38 in expected wins. And I'm really happy to have two extra wins under my belt to help me secure that important first-round bye. Sometimes it's better to be lucky than good, but wherever possible I'd rather be both.
But what about teams that weren't so fortunate? Let's compare the teams that have been good but not lucky against the teams that have been lucky but not good.
There are currently six teams with an expected win rate below 50% who have overperformed expectations by at least 0.7 wins. Those teams "should" be winning 40.2% of their games; instead, they've won 53.7%. This is your Group A: "Lucky, but not good".
There are currently seven teams with an expected win rate above 50% who have underperformed expectations by at least 0.7 wins. Those teams "should" be winning 60.3% of their games; instead they've won exactly 50% (thanks to a convenient tie). This is your Group B: "Good, but not lucky".
Group A's winning percentage is 3.7% higher than Group B's to this point, but that's just the purest form of luck and luck is meaningless from one sample to the next. I haven't picked which teams went into each sample; I haven't even looked at their respective rosters. (I sure hope I didn't wind up with a bunch of Derrick Henry squads!) But ignorance is the point here, so thanks to the magic of regression, I predict Group B will win a higher percentage of their games going forward.