web analytics

2012 Basic NFL Predictions

September 5, 2012
By

The NFL season begins tonight, and there are predictions flying everywhere. I thought I’d take a basic analytical approach and produce a baseline projection. If your predictions can’t beat this (dumb) system, you aren’t very good at predictions!

What got me started down this trail was Bill Barnwell’s article on Grantland breaking down some good basic predictive NFL statistics. He discussed Pythagorean Wins, record in close games, the Plexiglass principle, and team turnover margin, and how those stats help in predictions.

So, I thought I’d throw together a quick projection system that includes those principles to churn out baseline NFL predictions.

Evaluating NFL Pythagorean Wins

First, I looked at whether there is any persistence to winning more games than expected from point differential.  This is also tied into the close game fact–if you win a bunch of close games, you will win more games than your point differential would indicate likely.

I took all NFL team season since 1990 (thanks, Pro-Football-Reference!) and calculated each team’s Pythagorean Winning percentage for each season.  I then compared the difference between actual win% and expected win% in year Y to year Y+1.  The correlation was only 0.014, indicating that if you out perform your Pythagorean Win% one year, you aren’t more likely to do so the next year.  Thus the “regression to the mean” effect of looking at Pythagorean Win % and close game win%.

So, in my projection, I will project point differential and calculate wins based off of that (and SoS).

Effect of Turnover Margin

Teams that have excellent turnover margins are somewhat more likely to have good turnover margins again; the correlation of turnover margin from 1 year to the next is 0.13.  However, there is a strong “regression to the mean” component.

I ran a regression to predict turnover margin for Year Y from the previous 6 years.  The weights came out as follows:

Year Weight
NFL Average (=0.0) 5.76
Y-1 1.00
Y-2 0.47
Y-3 0.22
Y-4 0.10
Y-5 0.05
Y-6 0.02

So most of the weight is on NFL average–there is a very strong regression to the mean.

The Projections

To create my actual projections, I used a 3-step process:

  1. Adjust team point differential to remove turnover margin effect
  2. Predict point differential this year (using last 6 years plus regression to the mean)
  3. Convert point differential to wins based on strength of schedule and the Pythagorean equation

I ran a regression on the last 22 years of data (since 1990) to concurrently adjust for turnover margin and find the weights for predicting point differential.

The regression found that for every turnover-per-game-margin, the team’s point differential should be discounted by 2.4 points/game.  So if a team (San Fransisco last year) had a point differential of +9.44, with at turnover margin per game of +1.75, their adjusted point differential for predictive purposes would be 9.4 – (2.4*1.75) = 5.24.

Okay, now I have adjusted point differentials for every historical season.  On to the projections!

I ran the regression to predict point differential just like I did for turnover margins above.  The resulting weights:

Year Weight
NFL Average (=0.0) 0.83
Y-1 1.00
Y-2 0.38
Y-3 0.15
Y-4 0.06
Y-5 0.02
Y-6 0.01

Notice: not nearly as strong of a regression to the NFL mean, nor a very strong reversion to the team’s historical past.  Last year is a better predictor of this year than NFL average or the team’s total history before last year.

Okay, on to part 3: converting to wins.

I took the NFL schedule for next year, and based on the predicted team strengths I just calculated, I generated a strength of schedule for each team.

So, taking the team’s strength + SoS, and predicted team pace (I won’t bore you with those calcs) I generated Points For and Points Against and thus the team’s Pythagorean Win%, and Wins and Losses.

Note: I made 2 manual tweaks to account for 2 changes for this season: I added 5 points to the Broncos historical seasons and removed 5 points from the Colts for the seasons Peyton Manning played there, and I removed 5 points from the Saints for the coaching/suspension issues.

Here are the results:

AFC Predictions

Team W L Pythag Pts PtsO PtDif MoV SoS SRS Seed
AFC East
New England Patriots 10 6 0.648 436 338 98 6.1 -0.7 5.5 1
New York Jets 9 7 0.537 366 344 21 1.3 0.1 1.4 6
Miami Dolphins 8 8 0.523 349 337 12 0.8 -0.4 0.3
Buffalo Bills 7 9 0.435 344 385 -41 -2.6 -0.3 -2.9
AFC North
Pittsburgh Steelers 10 6 0.632 364 291 73 4.6 0.2 4.7 2
Baltimore Ravens 10 6 0.594 367 313 54 3.4 0.6 4.0 5
Cincinnati Bengals 8 8 0.484 342 353 -10 -0.6 0.5 -0.2
Cleveland Browns 6 10 0.383 290 355 -66 -4.1 0.6 -3.5
AFC South
Houston Texans 9 7 0.557 378 344 34 2.1 -0.1 2.0 4
Tennessee Titans 8 8 0.503 348 347 1 0.1 0.3 0.4
Jacksonville Jaguars 7 9 0.411 316 369 -53 -3.3 0.1 -3.2
Indianapolis Colts 6 10 0.394 329 395 -67 -4.2 0.0 -4.2
AFC West
San Diego Chargers 9 7 0.587 403 349 54 3.4 -0.3 3.1 3
Denver Broncos 8 8 0.511 367 361 6 0.4 0.4 0.7
Oakland Raiders 7 9 0.448 350 384 -33 -2.1 0.0 -2.0
Kansas City Chiefs 6 10 0.399 307 365 -59 -3.7 0.0 -3.7

NFC Predictions

Team W L Pythag Pts PtsO PtDif MoV SoS SRS Seed
NFC East
Philadelphia Eagles 9 7 0.589 397 341 55 3.5 0.0 3.4 3
Dallas Cowboys 8 8 0.504 366 365 1 0.1 0.3 0.4
New York Giants 8 8 0.482 370 383 -13 -0.8 0.9 0.1
Washington Redskins 7 9 0.443 325 359 -34 -2.1 0.1 -2.0
NFC North
Green Bay Packers 10 6 0.649 432 334 98 6.1 -0.8 5.4 1
Chicago Bears 8 8 0.528 358 342 16 1.0 -0.5 0.5 6
Detroit Lions 8 8 0.509 386 381 5 0.3 0.0 0.3
Minnesota Vikings 7 9 0.452 350 380 -31 -1.9 -0.5 -2.4
NFC South
New Orleans Saints 10 6 0.598 421 356 64 4.0 -0.2 3.8 2
Atlanta Falcons 9 7 0.563 381 343 38 2.4 -0.5 1.9 5
Carolina Panthers 7 9 0.435 343 384 -41 -2.6 0.0 -2.5
Tampa Bay Buccaneers 6 10 0.382 323 397 -74 -4.6 -0.2 -4.8
NFC West
San Francisco 49ers 9 7 0.564 355 319 36 2.2 -0.5 1.8 4
Seattle Seahawks 8 8 0.472 339 356 -17 -1.1 -0.4 -1.5
Arizona Cardinals 8 8 0.470 347 366 -19 -1.2 0.0 -1.2
St. Louis Rams 5 11 0.314 279 390 -111 -6.9 0.0 -6.9

Obviously, by pundit standards, these projections seem conservative. They represent, however, a maximum likelihood estimate for each team–we should give each team about a 50% chance of doing better than or worse than their prediction here.

The standard deviation on the projection is 5.4 points, so there is a 68% chance that each team will be within 5.4 points of the predicted margin per game.

Put another way–there is about a 50% chance that a team over performs its expected point differential by 10 or more points.  If that team is yours–you could be the San Fransisco 49ers of this  season (+10.4 above last year) or the Lions or Saints (about +8.5 above expectation for each last year).

Tags: , , ,

4 Responses to 2012 Basic NFL Predictions

  1. EvanZ on October 2, 2012 at 11:07 pm

    Hey, Daniel. Glad I caught this, as I had just done a model in BUGS/JAGS and was thinking about estimating turnover weights from the model itself (e.g. as another parameter). Have you found the work by Ed Kambour who also does Bayesian NFL ratings? He’s got a lot of good ideas in some old PPT slides.

    • DanielM on October 3, 2012 at 6:40 am

      What is BUGS/JAGS? Okay, read up on it… Still have no clue :-)

      I’ve done quite a bit with football ratings over the years (I think I started in that before working with basketball), so I had a background with many if the issues in football.

      I haven’t seen Ed Kambour’s work.

      I have (though not updated for this year) developed some more intricate NCAA football ratings based on the inter-year correlation of various stats (within-season out-of-sample stability). I used that to generate projected point and yards-per-play differential.

      Here are those correlations, for the NCAA again:
      In Season Correlation:
      Off YPP 65.6%
      Off Int% 20.1%
      Off Fum% 7.8%
      Def YPP 68.2%
      Def Int% 20.1%
      Def Fum% 1.3%

      • EvanZ on October 3, 2012 at 12:17 pm

        Ok, well I’ll post my model in the next couple of days. It will just include point differential. Maybe you’ll have suggestions for me about adding turnovers to improve it.

        • DanielM on October 3, 2012 at 12:37 pm

          If you’re doing a model for prediction out of sample, absolutely adjust for turnovers. Just not stable, particularly fumbles. Fumbles are pretty nearly random.

Leave a Reply

Your email address will not be published. Required fields are marked *

Current day month ye@r *

DSMok1 on Twitter

To-Do List

  1. Salary and contract value discussions and charts
  2. Multi-year APM/RAPM with aging incorporated
  3. Revise ASPM based on multi-year RAPM with aging
  4. ASPM within-year stability/cross validation
  5. Historical ASPM Tableau visualizations
  6. Create Excel VBA recursive web scraping tutorial
  7. Comparison of residual exponents for rankings
  8. Comparison of various "value metrics" ability to "explain" wins
  9. Publication of spreadsheets used
  10. Work on using Bayesian priors in Adjusted +/-
  11. Work on K-Means clustering for player categorization
  12. Learn ridge regression
  13. Temporally locally-weighted rankings
  14. WOWY as validation of replacement level
  15. Revise ASPM with latest RAPM data
  16. Conversion of ASPM to" wins"
  17. Lineup Bayesian APM
  18. Lineup RAPM
  19. Learn SQL