Week 2 Expected Fantasy Points: Rushing and Receiving

Last week I put together an expected fantasy points calculation for receiving, using air yards data available from nflscrapR to enhance the typical calculation that only uses yard line. By using air yards, we were able to calculate more accurate expected catch rates, expected yards and expected touchdowns based upon how far the ball was thrown. For example, you’re more likely to catch a short pass, but a longer pass that would be caught near the end zone gives you a much higher chance at a touchdown.

This week I’m adding expected fantasy point from rushing to the calculation. I found that yards to go on a play has strong relationship to yards gained,[note] Down does also, but not nearly as much[/note] and I used that relationship to calculate expected rushing yards for each play.

The relationship between yard line and rushing touchdown rate is much stronger than for receiving, which has a lower max touchdown or around 0.35. To deal with the distortion that comes from multiple short-yardage attempts on the same drive,[note] e.g. when a running back has three goal line attempts in a row[/note] I limit the expected touchdowns on any single drive to one.

By applying these relationships to runners’ actual Week 1 and Week 2 volume numbers, we can add expected fantasy points for rushing to our previously created receiving calculation.

The first table is a shorter version with columns for expected fantasy points, actual fantasy points and the difference in total, for rushing and for receiving. The second table, which is much wider, includes all the individual components for the rushing and receiving calculations.¬†Unfortunately, the data I have doesn’t differentiate between positions, so running backs, wide receivers and tight end are all in the same table.

The first two tables have year-to-date numbers for Weeks 1 and 2. The second two are for Week 2 only. All tables are arrange by expected fantasy points in descending order. They can also be sorted, scrolled and searched to your desire.

Year to date through Week 2

[table id=49 /]

YTD: Detailed Table

Scroll right for additional columns.

[table id=50 /]

Week 2 only

[table id=46 /]

Week 2: Detailed Table

Scroll right for additional columns.

[table id=47 /]


    • Good catch. The code was confused by the direct handoff to Cohen and gave the TD to him, not Howard. I’ll fix it.

Leave a Reply