One measure, in full · Opportunity residual
Production beyond opportunity: receiving yards
Definition
One definition, the column that binds its range, and what the figure is a share of.
receiving yards over the season minus what his targets + air_yards predicted, SUMMED over his games, so it grows with games played - band or rank on opportunity_residual.per_game.receiving_yards instead; the interval resamples his games and is conditional on the fitted line
opportunity_residual.receiving_yards
- Source
pbp; n counts independent games- Bound column
- starts 2009: pbp.receiver_player_id|incomplete_pass is not usable before it; fit receiving yards ~ targets + air_yards, OLS per season x position group over player-weeks; R^2 WR median 0.581 (0.548-0.651, 18 seasons); TE median 0.638 (0.584-0.696, 18 seasons); RB median 0.517 (0.406-0.589, 18 seasons); position group is the player's CURRENT nflverse position applied to every season, not as-of; SUMMED, so it scales with games: |value| against games played r 0.38 over 5729 player-seasons (per game: |value| against games played r 0.09 over 5729 player-seasons)
- Columns it reads
pbp.receiver_player_id|incomplete_pass,pbp.receiver_player_id|complete_pass,pbp.air_yards|pass_attempt,weekly_stats.position- Denominator
- Not a share: the figure has no denominator it splits with anyone.
- Season range
- Current 2009–2026. Current. Its inputs cover 2009 to 2026 and reach the season in progress.
- Slices
season|position_group; the page opens on 2025|RB- Refreshed
- This file was generated Tue, Oct 27, 9:32 AM ET. It does not state a refresh schedule.
Distribution
The middle half sits between −20 and 18.
Production beyond opportunity: receiving yards, 2025|RB · N = 83 with at least 5 games · 2009–2026
Darker bars: 20 and up, 20 of 83 values, the top fifth (24%).
Does it carry?
No week-to-week carry-over is published for this measure. Its file holds a value per player with its interval; whether a week above average carries into the next is not in it.
Loading Production beyond opportunity: receiving yards…
What the file does and does not say
Four limits, stated plainly.
- Interval from resampling games with replacement, 2,000 times. Built at 95%. That coverage is nominal: this page does not check it against outcomes.
- n counts independent games, never rows. A value resting on fewer than 5 games is shown muted in the table and not read: it is left out of the range and the leaders.
- It covers 2009 to 2026, and says why in the producer's words: starts 2009: pbp.receiver_player_id|incomplete_pass is not usable before it; fit receiving yards ~ targets + air_yards, OLS per season x position group over player-weeks; R^2 WR median 0.581 (0.548-0.651, 18 seasons); TE median 0.638 (0.584-0.696, 18 seasons); RB median 0.517 (0.406-0.589, 18 seasons); position group is the player's CURRENT nflverse position applied to every season, not as-of; SUMMED, so it scales with games: |value| against games played r 0.38 over 5729 player-seasons (per game: |value| against games played r 0.09 over 5729 player-seasons).
- It has values for 1,629 players. One with no row in the file has no value here, which is not a value of zero.