Skip to main content

NFL — additional Python functions — Dataset loaders: players–trades

load_players​

load_players(return_as_pandas=False, *, source: 'str' = 'nflverse') -> 'pl.DataFrame'

Load the nflverse NFL player-identity master.

Reads nflverse's published players.parquet — a one-row-per-player identity master that is the union of seven upstream systems (GSIS, ESPN, NGS roster, Pro-Football-Reference, OverTheCap, PFF, and the Sleeper / Yahoo cross-walk). It is the canonical source for cross-system identifier columns (gsis_id, espn_id, pfr_id, pff_id, otc_id, smart_id, esb_id, nfl_id) plus name, position, physical, draft, and status fields.

This is the full identity master. For an SDV-native, public-source-only alternative that does not depend on the nflverse release, see sportsdataverse.nfl.build_nfl_players (ESPN-athletes tier only) and sportsdataverse.nfl.nfl_players_crosswalk (a thin ID-only slice of this same parquet).

Parameters

ParameterTypeDefaultDescription
return_as_pandasboolFalseIf True, return a pandas.DataFrame; otherwise a polars.DataFrame (default).
sourcestr'nflverse'Which player-master release to read. "nflverse" (the default, also accepts None) returns the nflverse seven-system players.parquet identity master described above. "sportsdataverse" / "sdv" returns the SDV-native nfl_players release built by sportsdataverse.nfl.build_nfl_players from the public NFL Shield / ESPN-athletes surface, with gsis_id and the other cross-system IDs enriched by a best-effort join against the nflverse player master. The SDV tier is a partial build: its columns are a subset of nflverse's and cross-system IDs are sparser (notably pre-2016), though espn_id is populated. The default stays "nflverse". Any other value raises ValueError.

Returns

One-row-per-player identity master. return_as_pandas narrows the return to a pandas.DataFrame.

col_nametypedescription
gsis_idcharacterNFL Game Statistics & Information System player identifier, the canonical nflverse player key.
display_namecharacterPlayer's full display name as published by nflverse.
common_first_namecharacterPlayer's commonly used first name (the name they go by, which may differ from their legal first name).
first_namecharacterPlayer's legal first name.
last_namecharacterPlayer's last name.
short_namecharacterAbbreviated name (typically first initial plus last name).
football_namecharacterPlayer's preferred on-field name as used in broadcast and box-score contexts.
suffixcharacterGenerational or honorific name suffix (e.g., Jr., Sr., III), when present.
esb_idcharacterElias Sports Bureau player identifier.
nfl_idcharacterNFL.com / Shield player identifier.
pfr_idcharacterPro-Football-Reference player identifier.
pff_idcharacterPro Football Focus player identifier.
otc_idcharacterOverTheCap player identifier (salary-cap data source).
espn_idcharacterESPN athlete identifier.
smart_idcharacterNFL SMART (Standard Media and Reference Table) globally unique player identifier.
birth_datecharacterPlayer's date of birth (ISO YYYY-MM-DD).
position_groupcharacterBroad positional grouping the player belongs to (e.g., QB, RB, WR, DL).
positioncharacterPlayer's specific listed position abbreviation.
ngs_position_groupcharacterPositional grouping as classified by NFL Next Gen Stats.
ngs_positioncharacterSpecific position as classified by NFL Next Gen Stats.
heightintegerPlayer's height in inches.
weightintegerPlayer's listed weight in pounds.
headshotcharacterURL to the player's official headshot image.
college_namecharacterName of the college the player attended.
college_conferencecharacterAthletic conference of the player's college.
jersey_numbercharacterPlayer's uniform / jersey number.
rookie_seasonintegerSeason (year) the player entered the league as a rookie.
last_seasonintegerMost recent season (year) the player appeared on an NFL roster.
latest_teamcharacterAbbreviation of the most recent team the player was rostered on.
statuscharacterPlayer's current roster status (e.g., active, retired, free agent).
ngs_statuscharacterPlayer status as reported by NFL Next Gen Stats.
ngs_status_short_descriptioncharacterShort human-readable description of the NFL Next Gen Stats status.
years_of_experienceintegerNumber of accrued NFL seasons of experience.
pff_positioncharacterPlayer's position as classified by Pro Football Focus.
pff_statuscharacterPlayer's status as classified by Pro Football Focus.
draft_yearintegerYear the player was selected in the NFL Draft (null if undrafted).
draft_roundintegerRound in which the player was drafted (null if undrafted).
draft_pickintegerOverall pick number at which the player was drafted (null if undrafted).
draft_teamcharacterAbbreviation of the team that drafted the player (null if undrafted).

Example

from sportsdataverse.nfl import load_nfl_players
players = load_nfl_players()
print(players.shape)

# Pandas round-trip

players_pd = load_nfl_players(return_as_pandas=True)
players_pd.head()

# SDV-native player master (public Shield/ESPN-athletes build; subset of nflverse columns, sparser cross-IDs)

players_sdv = load_nfl_players(source="sdv")
players_sdv.select(["display_name", "position", "espn_id"]).head()

# Pipeline next step (one line)

import polars as pl
load_nfl_players().select(["gsis_id", "display_name", "position"]).head()

load_rosters​

load_rosters(seasons: 'List[int]', return_as_pandas=False, *, source: 'str' = 'nflverse') -> 'pl.DataFrame'

Load NFL season roster data for the requested seasons.

Reads nflverse's published season-roster parquet (one row per player per season). nflverse's roster product is the union of three upstream tiers -- NFL Next Gen Stats (2016+), the credentialed NFL Data Exchange (2002-2015), and the public NFL Shield endpoint (all seasons) -- so it carries densely populated cross-system identifier columns (espn_id, sportradar_id, yahoo_id, pff_id, pfr_id, ...) alongside biographical and depth-chart fields. This is the richest roster surface; prefer it whenever a network round trip to nflverse is acceptable.

Parameters

ParameterTypeDefaultDescription
seasonslistSeasons to load (e.g. [2024] or range(2020, 2025)). A single int is accepted and wrapped. 1920 is the earliest available season.
return_as_pandasboolFalseIf True, returns a pandas dataframe. If False, returns a polars dataframe (default).
sourcestr'nflverse'Which roster release to read. "nflverse" (the default, also accepts None) returns the nflverse season-roster releases described above -- the full multi-source product (1920+, densely populated cross-system IDs). "sportsdataverse" / "sdv" returns the SDV-native nfl_rosters release built by sportsdataverse.nfl.build_nfl_rosters from the public NFL Shield / ESPN surface, with cross-system IDs and college enriched by a best-effort join against the nflverse player master (sportsdataverse.nfl.load_nfl_players, on gsis_id; skipped if that load fails). The SDV tier is a partial build: its 30 columns are a subset of nflverse's 36, and cross-system IDs are sparser pre-2016. It covers only the published seasons (rosters 2022+). The default stays "nflverse". Any other value raises ValueError.

Returns

Polars dataframe of season rosters for the requested seasons (pandas.DataFrame when return_as_pandas=True).

Example

from sportsdataverse.nfl import load_nfl_rosters
rosters = load_nfl_rosters(seasons=[2024])

# Multi-season range

rosters = load_nfl_rosters(seasons=range(2020, 2025))

# Filter to a single team

import polars as pl
kc = load_nfl_rosters(seasons=[2024]).filter(pl.col("team") == "KC")

# SDV-native rosters (public Shield/ESPN build; published seasons 2022+; 30-column subset of nflverse, sparser cross-IDs pre-2016)

rosters_sdv = load_nfl_rosters(seasons=[2023], source="sdv")
rosters_sdv.select(["season", "team", "full_name", "gsis_id"]).head()

load_rosters_weekly​

load_rosters_weekly(seasons: 'List[int]', return_as_pandas=False) -> 'pl.DataFrame'

Load NFL weekly roster data for the requested seasons.

Reads nflverse's published weekly-roster parquet (one row per player per team per week), so the roster snapshot reflects mid-season transactions (signings, releases, IR moves) rather than a single season-end view. Like load_nfl_rosters it is sourced from nflverse's full multi-tier roster product and carries densely populated cross-system identifier columns plus a week / game_type pair identifying each snapshot.

Unlike load_nfl_rosters and load_nfl_players, this loader has no SDV-native (source="sdv") tier: the SDV roster build (build_nfl_rosters) is season-only, and weekly snapshots require the credential-gated NFL Data Exchange that the public build cannot reach.

Parameters

ParameterTypeDefaultDescription
seasonslistSeasons to load (e.g. [2024] or range(2022, 2025)). A single int is accepted and wrapped. 2002 is the earliest available season.
return_as_pandasboolFalseIf True, returns a pandas dataframe. If False, returns a polars dataframe (default).

Returns

Polars dataframe of weekly rosters for the requested seasons (pandas.DataFrame when return_as_pandas=True).

col_nametypedescription
seasonintegerNFL season (year) the weekly roster snapshot applies to.
teamcharacterTeam abbreviation in the nflverse standard (relocations folded, e.g. 'OAK' -> 'LV', 'SD' -> 'LAC', 'STL' -> 'LA').
positioncharacterPosition the player is listed at on the roster (e.g. 'QB', 'WR', 'CB').
depth_chart_positioncharacterFine-grained depth-chart position label, which may differ from the broader position group.
jersey_numberintegerUniform (jersey) number the player wears.
statuscharacterRoster status code for the player (e.g. 'ACT' active, 'INA' inactive, 'RES' reserve/injured).
full_namecharacterPlayer's full display name.
first_namecharacterPlayer's first (given) name.
last_namecharacterPlayer's last (family) name.
birth_datecharacterPlayer's date of birth (YYYY-MM-DD).
heightdoublePlayer's height in inches.
weightintegerPlayer's listed weight in pounds.
collegecharacterCollege or university the player attended.
gsis_idcharacterNFL GSIS player identifier — the canonical nflverse player key used to join across datasets.
espn_idcharacterESPN player identifier for cross-system joins.
sportradar_idcharacterSportradar player identifier for cross-system joins.
yahoo_idcharacterYahoo Sports player identifier for cross-system joins.
rotowire_idcharacterRotoWire player identifier for cross-system joins.
pff_idcharacterPro Football Focus (PFF) player identifier for cross-system joins.
pfr_idcharacterPro Football Reference (PFR) player identifier for cross-system joins.
fantasy_data_idcharacterFantasyData player identifier for cross-system joins.
sleeper_idcharacterSleeper player identifier for cross-system joins.
years_expintegerNumber of accrued NFL seasons of experience for the player.
headshot_urlcharacterURL of the player's headshot image.
ngs_positioncharacterPlayer's position as classified by NFL Next Gen Stats.
weekintegerWeek of the season the weekly roster snapshot applies to.
game_typecharacterType of game the weekly roster snapshot applies to (e.g. 'REG', 'POST').
status_description_abbrcharacterAbbreviated roster status description code from the source feed.
football_namecharacterPlayer's preferred football (commonly used) first name.
esb_idcharacterElias Sports Bureau (ESB) player identifier used for official NFL record-keeping.
gsis_it_idcharacterNFL GSIS internal tracking identifier for the player.
smart_idcharacterNFL SMART player identifier (GUID) used across modern NFL data feeds.
entry_yearintegerCalendar year the player first entered the NFL.
rookie_yearintegerCalendar year of the player's rookie season.
draft_clubcharacterTeam abbreviation of the club that drafted the player.
draft_numberintegerOverall pick number at which the player was selected in the NFL draft.

Example

from sportsdataverse.nfl import load_nfl_weekly_rosters
weekly = load_nfl_weekly_rosters(seasons=[2024])

# Multi-season range with a follow-up week filter

import polars as pl
wk1 = (
load_nfl_weekly_rosters(seasons=range(2022, 2025))
.filter(pl.col("week") == 1)
)

load_schedules​

load_schedules(seasons: 'List[int]', return_as_pandas=False) -> 'pl.DataFrame'

Load NFL schedule data

Parameters

ParameterTypeDefaultDescription
seasonslistUsed to define different seasons. 1999 is the earliest available season.
return_as_pandasboolFalseIf True, returns a pandas dataframe. If False, returns a polars dataframe.

Returns

Polars dataframe containing the schedule for the requested seasons.

col_nametypedescription
game_idcharacterTen digit identifier for NFL game.
seasoninteger4 digit number indicating to which season(s) the specified timeframe belongs to.
game_typecharacterThe most recent game type of that season that a player appeared on the roster.
weekintegerSeason week.
gamedaycharacterThe date on which the game occurred.
weekdaycharacterThe day of the week on which the game occcured.
gametimecharacterThe kickoff time of the game. This is represented in 24-hour time and the Eastern time zone, regardless of what time zone the game was being played in.
away_teamcharacterString abbreviation for the away team.
away_scoreintegerThe number of points the away team scored. Is NA for games which haven't yet been played.
home_teamcharacterThe home team. Note that this contains the designated home team for games which no team is playing at home such as Super Bowls or NFL International games.
home_scoreintegerThe number of points the home team scored. Is NA for games which haven't yet been played.
locationcharacterEither Home if the home team is playing in their home stadium, or Neutral if the game is being played at a neutral location. This still shows as Home for games between the Giants and Jets even though they share the same home stadium.
resultintegerThe number of points the home team scored minus the number of points the visiting team scored. Equals h_score - v_score. Is NA for games which haven't yet been played. Convenient for evaluating against the spread bets.
totalintegerThe sum of each team's score in the game. Equals h_score + v_score. Is NA for games which haven't yet been played. Convenient for evaluating over/under total bets.
overtimeintegerBinary indicator of whether or not game went to overtime.
old_game_idcharacterLegacy NFL game ID.
gsisintegerThe id of the game issued by the NFL Game Statistics & Information System.
nfl_detail_idcharacterThe id of the game issued by NFL Detail.
pfrcharacterThe id of the game issued by Pro-Football-Reference
pffintegerThe id of the game issued by Pro Football Focus
espncharacterThe id of the game issued by ESPN
ftnintegerFTN Data game identifier used to join schedule records with FTN charting and tracking data.
away_restintegerDays of rest that the away team is coming off of.
home_restintegerDays of rest that the home team is coming off of.
away_moneylineintegerOdds for away team to win the game.
home_moneylineintegerOdds for home team to win the game.
spread_linedoubleThe closing spread line for the game. A positive number means the home team was favored by that many points, a negative number means the away team was favored by that many points. (Source: Pro-Football-Reference)
away_spread_oddsintegerOdds for away team to cover the spread.
home_spread_oddsintegerOdds for home team to cover the spread.
total_linedoubleThe closing total line for the game. (Source: Pro-Football-Reference)
under_oddsintegerOdds that total score of game would be under the total_line.
over_oddsintegerOdds that total score of game would be over the total_ine.
div_gameintegerBinary indicator of whether or not game was played by 2 teams in the same division.
roofcharacterOne of 'dome', 'outdoors', 'closed', 'open' indicating indicating the roof status of the stadium the game was played in. (Source: Pro-Football-Reference)
surfacecharacterWhat type of ground the game was played on. (Source: Pro-Football-Reference)
tempintegerThe temperature at the stadium only for 'roof' = 'outdoors' or 'open'.(Source: Pro-Football-Reference)
windintegerThe speed of the wind in miles/hour only for 'roof' = 'outdoors' or 'open'. (Source: Pro-Football-Reference)
away_qb_idcharacterGSIS Player ID for away team starting quarterback.
home_qb_idcharacterGSIS Player ID for home team starting quarterback.
away_qb_namecharacterName of away team starting QB.
home_qb_namecharacterName of home team starting QB.
away_coachcharacterFirst and last name of the away team coach. (Source: Pro-Football-Reference)
home_coachcharacterFirst and last name of the home team coach. (Source: Pro-Football-Reference)
refereecharacterName of the game's referee (head official)
stadium_idcharacterID of the stadium the game was played in. (Source: Pro-Football-Reference)
stadiumcharacterName of the stadium

Example

from sportsdataverse.nfl import load_nfl_schedule
schedule = load_nfl_schedule(seasons=[2024])
schedule.shape

# Multi-season range

schedule = load_nfl_schedule(seasons=range(2020, 2025))

# Filter to a single week

import polars as pl
week_one = load_nfl_schedule(seasons=[2024]).filter(pl.col("week") == 1)

# Pandas round-trip

schedule_pd = load_nfl_schedule(seasons=[2024], return_as_pandas=True)
schedule_pd[["game_id", "home_team", "away_team", "week"]].head()

load_snap_counts​

load_snap_counts(seasons: 'List[int]', return_as_pandas=False) -> 'pl.DataFrame'

Load NFL snap counts data for selected seasons

Parameters

ParameterTypeDefaultDescription
seasonslistUsed to define different seasons. 2012 is the earliest available season.
return_as_pandasboolFalseIf True, returns a pandas dataframe. If False, returns a polars dataframe.

Returns

Polars dataframe containing snap counts available for the requested seasons.

col_nametypedescription
game_idcharacterTen digit identifier for NFL game.
pfr_game_idcharacterPFR game ID
seasoninteger4 digit number indicating to which season(s) the specified timeframe belongs to.
game_typecharacterThe most recent game type of that season that a player appeared on the roster.
weekintegerSeason week.
playercharacterPlayer name
pfr_player_idcharacterID from Pro Football Reference
positioncharacterPrimary position as reported by NFL.com
teamcharacterNFL team. Uses official abbreviations as per NFL.com
opponentcharacterOpposing team of player
offense_snapsdoubleNumber of snaps on offense
offense_pctdoublePercent of offensive snaps taken
defense_snapsdoubleNumber of snaps on defense
defense_pctdoublePercent of defensive snaps taken
st_snapsdoubleNumber of snaps on special teams
st_pctdoublePercent of special teams snaps taken

Example

from sportsdataverse.nfl import load_nfl_snap_counts
snaps = load_nfl_snap_counts(seasons=[2024])

# Multi-season range with offense-only filter

import polars as pl
offense = (
load_nfl_snap_counts(seasons=range(2022, 2025))
.filter(pl.col("offense_snaps") > 0)
)

load_team_stats​

load_team_stats(seasons: 'List[int]', summary_level: 'str' = 'week', return_as_pandas=False, *, source: 'str' = 'nflverse') -> 'pl.DataFrame'

Load NFL team stats data going back to 1999

Parameters

ParameterTypeDefaultDescription
seasonslistUsed to define different seasons. 1999 is the earliest available season.
summary_levelstr'week'Aggregation level. One of "week", "reg", "post", "reg+post". Defaults to "week". Ignored when source is the SDV-native release (a single week-level parquet covering all seasons; filter post-load).
return_as_pandasboolFalseIf True, returns a pandas dataframe. If False, returns a polars dataframe.
sourcestr'nflverse'Which team-stats release to read. "nflverse" (the default) reads the per-season nflverse stats_team releases. "sportsdataverse" / "sdv" reads the SDV-native nfl_team_stats release (a single combined week-level parquet, built by sportsdataverse.nfl.build_nfl_team_stats from the SDV play-by-play and filtered to the requested seasons post-load).

Returns

Polars dataframe containing team stats available for the requested seasons.

col_nametypedescription
seasoninteger4 digit number indicating to which season(s) the specified timeframe belongs to.
weekintegerSeason week.
teamcharacterNFL team. Uses official abbreviations as per NFL.com
season_typecharacterREG or POST indicating if the timeframe belongs to regular or post season.
game_idcharacterTen digit identifier for NFL game.
opponent_teamcharacterAbbreviation of the opposing team the team faced in the game or week represented by this row.
completionsintegerThe number of completed passes.
attemptsintegerThe number of pass attempts as defined by the NFL.
passing_yardsintegerNumeric yards by the passer_player_name, including yards gained in pass plays with laterals. This should equal official passing statistics.
passing_tdsintegerThe number of passing touchdowns.
passing_interceptionsintegerTotal number of interceptions thrown by the team's quarterbacks during the period covered.
sacks_sufferedintegerTotal number of times the team's quarterback was sacked during the period covered.
sack_yards_lostintegerTotal yards lost by the team's offense as a result of being sacked.
sack_fumblesintegerThe number of sacks with a fumble.
sack_fumbles_lostintegerThe number of sacks with a lost fumble.
passing_air_yardsintegerPassing air yards (includes incomplete passes).
passing_yards_after_catchintegerYards after the catch gained on plays in which player was the passer (this is an unofficial stat and may differ slightly between different sources).
passing_first_downsintegerFirst downs on pass attempts.
passing_epadoubleTotal expected points added on pass attempts and sacks. NOTE: this uses the variable qb_epa, which gives QB credit for EPA for up to the point where a receiver lost a fumble after a completed catch and makes EPA work more like passing yards on plays with fumbles.
passing_cpoedoubleCompletion percentage over expectation for the team's passing game — how much better or worse actual completion rate was versus the model-predicted rate. Percentage points (100 * the completion-rate gap), not a 0-1 rate.
passing_2pt_conversionsintegerTwo-point conversion passes.
passing_10integerNumber of the team's completed passes that gained 10 or more yards (one of nflfastR's 'explosive' play thresholds).
passing_16integerNumber of the team's completed passes that gained 16 or more yards (one of nflfastR's 'explosive' play thresholds).
passing_20integerNumber of the team's completed passes that gained 20 or more yards (one of nflfastR's 'explosive' play thresholds).
passing_40integerNumber of the team's completed passes that gained 40 or more yards (one of nflfastR's 'explosive' play thresholds).
carriesintegerThe number of official rush attempts (incl. scrambles and kneel downs). Rushes after a lateral reception don't count as carry.
rushing_yardsintegerNumeric yards by the rusher_player_name, excluding yards gained in rush plays with laterals. This should equal official rushing statistics but could miss yards gained in rush plays with laterals. Please see the description of lateral_rusher_player_name for further information.
rushing_tdsintegerThe number of rushing touchdowns (incl. scrambles). Also includes touchdowns after obtaining a lateral on a play that started with a rushing attempt.
rushing_fumblesintegerThe number of rushes with a fumble.
rushing_fumbles_lostintegerThe number of rushes with a lost fumble.
rushing_first_downsintegerFirst downs on rush attempts (incl. scrambles).
rushing_epadoubleExpected points added on rush attempts (incl. scrambles and kneel downs).
rushing_2pt_conversionsintegerTwo-point conversion rushes
rushing_10integerNumber of the team's runs that gained 10 or more yards (one of nflfastR's 'explosive' play thresholds).
rushing_12integerNumber of the team's runs that gained 12 or more yards (one of nflfastR's 'explosive' play thresholds).
rushing_20integerNumber of the team's runs that gained 20 or more yards (one of nflfastR's 'explosive' play thresholds).
rushing_40integerNumber of the team's runs that gained 40 or more yards (one of nflfastR's 'explosive' play thresholds).
receptionsintegerThe number of pass receptions. Lateral receptions officially don't count as reception.
targetsintegerThe number of pass plays where the player was the targeted receiver.
receiving_yardsintegerNumeric yards by the receiver_player_name, excluding yards gained in pass plays with laterals. This should equal official receiving statistics but could miss yards gained in pass plays with laterals. Please see the description of lateral_receiver_player_name for further information.
receiving_tdsintegerThe number of touchdowns following a pass reception. Also includes touchdowns after receiving a lateral on a play that started as a pass play.
receiving_fumblesintegerThe number of fumbles after a pass reception.
receiving_fumbles_lostintegerThe number of fumbles lost after a pass reception.
receiving_air_yardsintegerReceiving air yards (incl. incomplete passes).
receiving_yards_after_catchintegerYards after the catch gained on plays in which player was receiver (this is an unofficial stat and may differ slightly between different sources).
receiving_first_downsintegerTotal number of first downs gained on receptions
receiving_epadoubleTotal EPA on plays where this receiver was targeted
receiving_2pt_conversionsintegerTwo-point conversion receptions
receiving_10integerNumber of the team's receptions that gained 10 or more yards (one of nflfastR's 'explosive' play thresholds).
receiving_16integerNumber of the team's receptions that gained 16 or more yards (one of nflfastR's 'explosive' play thresholds).
receiving_20integerNumber of the team's receptions that gained 20 or more yards (one of nflfastR's 'explosive' play thresholds).
receiving_40integerNumber of the team's receptions that gained 40 or more yards (one of nflfastR's 'explosive' play thresholds).
special_teams_tdsintegerTotal number of kick/punt return touchdowns
def_tackles_solointegerTotal number of solo tackles for this player
def_tackles_with_assistintegerNumber of tackles this player had with an assisted tackle
def_tackle_assistsintegerNumber of assisted tackles for this player
def_tackles_for_lossintegerNumber of tackles for loss (TFL) for this player
def_tackles_for_loss_yardsintegerYards lost from TFLs involving this player
def_fumbles_forcedintegerNumber of times a fumble was forced from this player
def_sacksdoubleNumber of sacks form this player
def_sack_yardsdoubleYards lost from sacks forced by this player
def_qb_hitsintegerNumber of QB hits from this player (should not include plays where the QB was sacked)
def_interceptionsintegerNumber of interceptions forced by this player
def_interception_yardsintegeryards gained/lost by interception returns from this player
def_pass_defendedintegerNumber of passes defended/broken up by this player
def_tdsintegerNumber of defensive touchdowns scored by this player
def_fumblesintegerNumber of fumbles by this player
def_safetiesintegerNumber of safeties recorded by the team's defense (tackling an opponent in their own end zone).
def_punt_blocksintegerNumber of opponent punts blocked by the team's defense.
def_pat_blocksintegerNumber of opponent extra point attempts blocked by the team's defense.
def_fg_blocksintegerNumber of opponent field goal attempts blocked by the team's defense.
def_2pt_attsintegerNumber of defensive two-point conversion returns attempted by the team (nflfastR stat id 403).
def_2pt_madeintegerNumber of successful defensive two-point conversion returns by the team (nflfastR stat id 404).
misc_yardsintegerYards gained by the team through miscellaneous means not captured in standard rushing, passing, or return categories.
fumble_recovery_ownintegerNumber of the team's own fumbles that were recovered by the team itself.
fumble_recovery_yards_ownintegerTotal yards gained after recovering their own fumbles.
fumble_recovery_oppintegerNumber of fumbles recovered by the team from the opposing offense (defensive fumble recoveries).
fumble_recovery_yards_oppintegerTotal yards gained by the team on returns of opponent fumble recoveries.
fumble_recovery_tdsintegerNumber of touchdowns scored by the team on fumble recoveries (own or opponent).
penaltiesintegerTotal number of penalties.
penalty_yardsintegerYards gained (or lost) by the posteam from the penalty.
timeoutsintegerNumber of timeouts remaining or used by the team during the game or period covered.
fumbles_forced_by_oppintegerFumbles by the team's players that were forced by the opponent, counted across all units (offense, defense and special teams).
fumbles_not_forcedintegerFumbles by the team's players that were not forced by the opponent, counted across all units.
fumbles_out_of_boundsintegerFumbles by the team's players where the ball went out of bounds, forced or not; each is also counted in fumbles_forced_by_opp or fumbles_not_forced.
fumbles_totalintegerTotal fumbles by the team's players across all units; equals fumbles_forced_by_opp + fumbles_not_forced.
fumbles_lost_totalintegerTotal fumbles lost by the team's players, counted across all units.
punt_returnsintegerNumber of punt returns.
punt_return_yardsintegerTeam punt return yards.
kickoff_returnsintegerTotal number of kickoff return attempts by the team.
kickoff_return_yardsintegerTotal yards gained by the team on kickoff returns during the period covered.
fg_madeintegerTRUE when the field goal attempt was successful.
fg_attintegerTotal field goal attempts by the team's kicker during the period covered.
fg_missedintegerTotal number of field goal attempts that were missed (not blocked, not made) by the team's kicker.
fg_blockedintegerTotal number of field goal attempts that were blocked by the opposing defense.
fg_longintegerDistance in yards of the team's longest successful field goal during the period covered.
fg_pctdoubleField goal percentage (0-1).
fg_made_0_19integerNumber of field goals made by the team from 0–19 yards.
fg_made_20_29integerNumber of field goals made by the team from 20–29 yards.
fg_made_30_39integerNumber of field goals made by the team from 30–39 yards.
fg_made_40_49integerNumber of field goals made by the team from 40–49 yards.
fg_made_50_59integerNumber of field goals made by the team from 50–59 yards.
fg_made_60_integerNumber of field goals made by the team from 60 yards or longer.
fg_missed_0_19integerNumber of field goal attempts missed from 0–19 yards.
fg_missed_20_29integerNumber of field goal attempts missed from 20–29 yards.
fg_missed_30_39integerNumber of field goal attempts missed from 30–39 yards.
fg_missed_40_49integerNumber of field goal attempts missed from 40–49 yards.
fg_missed_50_59integerNumber of field goal attempts missed from 50–59 yards.
fg_missed_60_integerNumber of field goal attempts missed from 60 yards or longer.
fg_made_listcharacterComma-separated list of distances (in yards) for each successful field goal made by the team.
fg_missed_listcharacterComma-separated list of distances (in yards) for each missed field goal attempt by the team.
fg_blocked_listcharacterComma-separated list of distances (in yards) for field goal attempts blocked by or against the team.
fg_made_distanceintegerTotal cumulative distance in yards of all successful field goals made by the team.
fg_missed_distanceintegerTotal cumulative distance in yards of all missed field goal attempts by the team.
fg_blocked_distanceintegerDistance in yards of the most recent or representative blocked field goal attempt.
pat_madeintegerTotal number of extra points successfully kicked by the team.
pat_attintegerTotal number of extra point (PAT) kick attempts by the team.
pat_missedintegerNumber of extra point kick attempts that were missed (neither made nor blocked).
pat_blockedintegerNumber of extra point attempts that were blocked by the opposing defense.
pat_pctdoubleExtra point conversion percentage (pat_made divided by pat_att) for the team's kicker.
gwfg_madeintegerNumber of game-winning field goals successfully converted by the team's kicker.
gwfg_attintegerNumber of game-winning field goal attempts (potential go-ahead kicks in the final moments).
gwfg_missedintegerNumber of game-winning field goal attempts that were missed by the team's kicker.
gwfg_blockedintegerNumber of game-winning field goal attempts that were blocked by the opposing defense.
gwfg_distanceintegerDistance in yards of the game-winning field goal attempt(s) during the period covered.
pt_attintegerNumber of punts kicked by the team; blocked punts are counted separately in pt_blocked.
pt_blockedintegerNumber of the team's punts that were blocked.
pt_longintegerLength in yards of the team's longest punt; null when the team had no kicked punt (never 0 in the 2024 sample).
pt_yardsintegerTotal gross yards of the team's punts.
pt_inside_20integerNumber of the team's punts credited as ending inside the opponent's 20-yard line (nflfastR defines the spot as where the return ended).
pt_out_of_boundsintegerNumber of the team's punts that went out of bounds without a return.
pt_downedintegerNumber of the team's punts that were downed without a return.
pt_touchbackintegerNumber of the team's punts that resulted in a touchback.
pt_fair_caughtintegerNumber of the team's punts that were fair caught by the opponent.
pt_returnedintegerNumber of the team's punts that were returned by the opponent.
pt_return_yardsintegerPunt return yards gained by the opponent on the team's punts; can be negative (minimum -4 in the 2024 sample).
pt_return_tdsintegerNumber of the team's punts that the opponent returned for a touchdown.
pt_net_yardsintegerNet punting yards: pt_yards minus pt_return_yards minus 20 yards per touchback.

Example

from sportsdataverse.nfl import load_nfl_team_stats
weekly = load_nfl_team_stats(seasons=[2024])

# Regular-season-only team stats

reg = load_nfl_team_stats(seasons=[2024], summary_level="reg")

# SDV-native team stats (built from SDV play-by-play)

sdv = load_nfl_team_stats(seasons=[2024], source="sdv")

load_teams​

load_teams(return_as_pandas=False) -> 'pl.DataFrame'

Load NFL team ID information and logos

Parameters

ParameterTypeDefaultDescription
return_as_pandasboolFalseIf True, returns a pandas dataframe. If False, returns a polars dataframe.

Returns

Polars dataframe containing teams available.

col_nametypedescription
team_abbrcharacterOfficial team abbreveation
team_namecharacterTeam nickname; team_detail = TRUE only.
team_idintegerESPN team id.
team_nickcharacterTeam nickname or mascot name (e.g., 'Chiefs', 'Patriots').
team_confcharacterConference the team belongs to (e.g., 'AFC', 'NFC').
team_divisioncharacterDivision within the conference the team belongs to (e.g., 'AFC East').
team_colorcharacterPrimary team color; team_detail = TRUE only.
team_color2characterSecondary brand color for the team, expressed as a hex color code.
team_color3characterTertiary brand color for the team, expressed as a hex color code.
team_color4characterQuaternary brand color for the team, expressed as a hex color code.
team_logo_wikipediacharacterURL of the team's logo image as hosted on Wikipedia.
team_logo_espncharacterURL of the team's primary logo as hosted on ESPN.
team_wordmarkcharacterURL of the team's wordmark (text-based logo) image.
team_conference_logocharacterURL of the conference logo image associated with the team.
team_league_logocharacterURL of the NFL league logo image.
team_logo_squaredcharacterURL of a square-format version of the team's logo.

Example

from sportsdataverse.nfl import load_nfl_teams
teams = load_nfl_teams()
teams.shape

# Pandas round-trip

teams_pd = load_nfl_teams(return_as_pandas=True)
teams_pd[["team_abbr", "team_name", "team_conf", "team_division"]].head()

load_trades​

load_trades(return_as_pandas=False) -> 'pl.DataFrame'

Load NFL trades data

Parameters

ParameterTypeDefaultDescription
return_as_pandasboolFalseIf True, returns a pandas dataframe. If False, returns a polars dataframe.

Returns

Polars dataframe containing NFL trade information.

col_nametypedescription
trade_idintegerID of Trade
seasoninteger4 digit number indicating to which season(s) the specified timeframe belongs to.
trade_datecharacterExact date that trade occurred
gavecharacterTeam that gave pick/player in row
receivedcharacterTeam that received pick/player in row
pick_seasonintegerDraft in which traded pick was in
pick_roundintegerRound in which traded pick was in
pick_numberintegerPick number of traded pick
conditionalintegerBinary indicator of whether or not traded pick was conditional
pfr_idcharacterPro-Football-Reference ID for player
pfr_namecharacterFull name of traded player

Example

from sportsdataverse.nfl import load_nfl_trades
trades = load_nfl_trades()
trades.shape

# Filter to a single season

import polars as pl
trades_2024 = load_nfl_trades().filter(pl.col("season") == 2024)