Welcome! I intend this to be an ongoing project of predicting NFL game outcomes, point spreads, and final scores. My hope is that my models will improve over time as they become more sophisticated and use better data. I will try to regularly publish predictions to keep myself accountable, and will make observations along the way about what is working and what isn't. See below for latest updates. Enjoy!
_________________________________________________________________________________
Recap Week 6:
8 - 7. And I was grateful to even get that. It was looking a lot worse after the first round of games on Sunday. Lots of surprises this week as both the outcome and the ensemble predictions went 8 - 7. The running total is now 43 - 33 (57%). The expected value with the probabilities I gave was 8.842, so perhaps it is not as bad as I thought. What happened?
_________________________________________________________________________________
Recap Week 6:
8 - 7. And I was grateful to even get that. It was looking a lot worse after the first round of games on Sunday. Lots of surprises this week as both the outcome and the ensemble predictions went 8 - 7. The running total is now 43 - 33 (57%). The expected value with the probabilities I gave was 8.842, so perhaps it is not as bad as I thought. What happened?
- Chargers beat the Broncos
- I thought this would be an easy win for the Broncos. So did everybody. I guess not.
- Cowboys beat the Packers
- The Cowboys are now 5 - 1. Could this be their year? I'll definitely keep an eye on them.
- Dolphins beat the Steelers
- A couple interceptions on the Steelers, some amazing downfield catches by the Dolphins, and the Dolphins come away with the win. Nobody saw that coming.
- Saints beat the Panthers
- The Panthers are 1 - 5? What? It looks like they got into a deep hole and although coming back to tie, a couple of unfortunate plays on their part and some great plays and performance by the Saints put the Saints on top.
_________________________________________________________________________________
Week 6:
The first change for the week was to finally put a cap on the years since a team has gone to the playoffs. Anything above 10 years is basically an outlier. Right now there are four such outliers:
- Bills: 17 years (most in past 15 years)
- Browns: 14 years
- Rams: 12 years
- Raiders: 12 years
This makes sense. A team is not really the same team after 10 years if they have a different coach, QB, etc. And being out of the playoffs for 16 years shouldn't be twice as bad as 8 years. At some point, you can't get any worse from a predictive standpoint in this regard as there is no longer any linear relationship between the number of years since a team has been to the playoffs and whether that team will win or not. In my analysis, there is on average a steady downward trend in win ratio from 0 to 5 years, and after 5 years, there is not much of a pattern that would make a difference (the team has reset). So this will be capped at 5 years.
The second change was to also cap the years since a team has gone to the playoffs with the same coach. In recent history, the longest a coach has lasted without going to the playoffs is 5 years. Anything above 3 years is basically an outlier. Who are the current outliers in this regard?
- Rams: 4 years (Fisher is in his 5th year as coach)
As I pointed out last week, the combination of these two variables is why my model hates the Rams. I should point out that no coach in the last 15 years has lasted more than 5 years without getting to the playoffs. If Fisher doesn't make it this year, he absolutely must do it next year to keep his job. The Chargers, Saints, and Jaguars are at 3 years, so their coaches are also starting to get near trouble. This will be capped at 2 years, since after 2 years there isn't much of a difference. This will make the Rams more competitive in my model.
The third change is a coding change. One of my MS Data Analytics classes is teaching about proper web scraping methods. One aspect of that is adding crawl-delays according to the robots.txt file to any code that automatically scrapes a page's web content. The purpose of adding a delay is so that you don't bog down the server with too many page requests in a short amount of time. It is but one of many ways of playing nice when scraping the world wide web. Thus, I added this feature to my code in order to be more friendly to those websites that I pull data from.
Oddities and Bold Predictions:
- 49ers vs. Bills
- Before adjusting the above variables, my outcome model gave the game to the 49ers, but the other two models disagreed. After the adjustment, the game now goes to the Bills, which seems to me to be the better bet. And now all of the models agree.
- Chiefs vs. Raiders
- The Raiders are 4-1 and the Chiefs are 2-2. All three of my models gives the game to the Chiefs though, and by quite a bit. What are the differences? It appears that the years since the playoffs still makes a big difference, and that is the main reason my model predicts a Chief's win. Personally, I'd go with the Raiders.
- Lions vs. Rams
- Lions are still predicted to beat the Rams. But it is much closer than things used to be for the Rams.
Good luck in Week 6!
Here are the predictions for Week 6:
Week
|
Date
|
Team
|
Home Away
|
Opponent
|
Prob. Win
|
Pred. Team Win
|
Actual Team Win
|
Pred. Team PD
|
Actual Team PD
|
Pred. Team
Score
|
Pred. Opp.
Score
|
Actual Team
Score
|
Actual Opp.
Score
|
Ensemble
Prediction Win
|
6
|
10/13/2016
|
Broncos
|
@
|
Chargers
|
0.668
|
1
|
0
|
14
|
-8
|
27
|
20
|
13
|
21
|
1
|
6
|
10/13/2016
|
Chargers
|
Broncos
|
0.332
|
0
|
1
|
-14
|
8
|
20
|
27
|
21
|
13
|
0
| |
6
|
10/16/2016
|
49ers
|
@
|
Bills
|
0.479
|
0
|
0
|
-2
|
-29
|
22
|
26
|
16
|
45
|
0
|
6
|
10/16/2016
|
Bears
|
Jaguars
|
0.515
|
1
|
0
|
-4
|
-1
|
19
|
26
|
16
|
17
|
0.33
| |
6
|
10/16/2016
|
Bengals
|
@
|
Patriots
|
0.455
|
0
|
0
|
-4
|
-18
|
17
|
26
|
17
|
35
|
0
|
6
|
10/16/2016
|
Bills
|
49ers
|
0.521
|
1
|
1
|
2
|
29
|
26
|
22
|
45
|
16
|
1
| |
6
|
10/16/2016
|
Browns
|
@
|
Titans
|
0.457
|
0
|
0
|
-6
|
-2
|
15
|
24
|
26
|
28
|
0
|
6
|
10/16/2016
|
Chiefs
|
@
|
Raiders
|
0.655
|
1
|
1
|
7
|
16
|
26
|
21
|
26
|
10
|
1
|
6
|
10/16/2016
|
Colts
|
@
|
Texans
|
0.451
|
0
|
0
|
-3
|
-3
|
18
|
24
|
23
|
26
|
0
|
6
|
10/16/2016
|
Cowboys
|
@
|
Packers
|
0.442
|
0
|
1
|
-4
|
14
|
15
|
25
|
30
|
16
|
0
|
6
|
10/16/2016
|
Dolphins
|
Steelers
|
0.262
|
0
|
1
|
-13
|
15
|
14
|
29
|
30
|
15
|
0
| |
6
|
10/16/2016
|
Eagles
|
@
|
Redskins
|
0.509
|
1
|
0
|
5
|
-7
|
27
|
29
|
20
|
27
|
0.67
|
6
|
10/16/2016
|
Falcons
|
@
|
Seahawks
|
0.391
|
0
|
0
|
-1
|
-2
|
27
|
30
|
24
|
26
|
0
|
6
|
10/16/2016
|
Giants
|
Ravens
|
0.495
|
0
|
1
|
-7
|
4
|
23
|
24
|
27
|
23
|
0
| |
6
|
10/16/2016
|
Jaguars
|
@
|
Bears
|
0.485
|
0
|
1
|
4
|
1
|
26
|
19
|
17
|
16
|
0.67
|
6
|
10/16/2016
|
Lions
|
Rams
|
0.643
|
1
|
1
|
5
|
3
|
28
|
22
|
31
|
28
|
1
| |
6
|
10/16/2016
|
Packers
|
Cowboys
|
0.558
|
1
|
0
|
4
|
-14
|
25
|
15
|
16
|
30
|
1
| |
6
|
10/16/2016
|
Panthers
|
@
|
Saints
|
0.618
|
1
|
0
|
1
|
-3
|
25
|
30
|
38
|
41
|
0.67
|
6
|
10/16/2016
|
Patriots
|
Bengals
|
0.545
|
1
|
1
|
4
|
18
|
26
|
17
|
35
|
17
|
1
| |
6
|
10/16/2016
|
Raiders
|
Chiefs
|
0.345
|
0
|
0
|
-7
|
-16
|
21
|
26
|
10
|
26
|
0
| |
6
|
10/16/2016
|
Rams
|
@
|
Lions
|
0.357
|
0
|
0
|
-5
|
-3
|
22
|
28
|
28
|
31
|
0
|
6
|
10/16/2016
|
Ravens
|
@
|
Giants
|
0.505
|
1
|
0
|
7
|
-4
|
24
|
23
|
23
|
27
|
1
|
6
|
10/16/2016
|
Redskins
|
Eagles
|
0.491
|
0
|
1
|
-5
|
7
|
29
|
27
|
27
|
20
|
0.33
| |
6
|
10/16/2016
|
Saints
|
Panthers
|
0.382
|
0
|
1
|
-1
|
3
|
30
|
25
|
41
|
38
|
0.33
| |
6
|
10/16/2016
|
Seahawks
|
Falcons
|
0.609
|
1
|
1
|
1
|
2
|
30
|
27
|
26
|
24
|
1
| |
6
|
10/16/2016
|
Steelers
|
@
|
Dolphins
|
0.738
|
1
|
0
|
13
|
-15
|
29
|
14
|
15
|
30
|
1
|
6
|
10/16/2016
|
Texans
|
Colts
|
0.549
|
1
|
1
|
3
|
3
|
24
|
18
|
26
|
23
|
1
| |
6
|
10/16/2016
|
Titans
|
Browns
|
0.543
|
1
|
1
|
6
|
2
|
24
|
15
|
28
|
26
|
1
| |
6
|
10/17/2016
|
Cardinals
|
Jets
|
0.666
|
1
|
1
|
-3
|
25
|
18
|
23
|
28
|
3
|
0.33
| |
6
|
10/17/2016
|
Jets
|
@
|
Cardinals
|
0.334
|
0
|
0
|
3
|
-25
|
23
|
18
|
3
|
28
|
0.67
|
No comments:
Post a Comment