Skip to main content
Version: 0.1.5

CFB — additional Python functions — Yahoo Sports Shangrila

yahoo_cfb_boxscore​

yahoo_cfb_boxscore(game_id: 'Union[int, str]', *, return_parsed: 'bool' = True, return_as_pandas: 'bool' = False, **kwargs: 'Any') -> "Union[pl.DataFrame, 'pd.DataFrame', Dict[str, Any]]"

Yahoo CFB box score: team and player stats, one row per entity stat.

Wraps the editorial boxscore/{game_id} resource. Its box score is a decoder-dictionary schema (player_stats[playerId][variation][stat_type] = value, same for team_stats) that this decodes against the payload's stat_types / stat_categories dictionaries into a long frame: one row per team stat and per player stat. Pivot on stat_type_id for a wide box. The editorial payload carries no player names; a player's team comes from the game's home/away lineups. Pass return_parsed=False for the raw payload, which also carries play-by-play and drives.

Parameters

ParameterTypeDefaultDescription
game_idUnion[int, str]Dotted Yahoo game id (e.g. "ncaaf.g.202509200023").
return_parsedboolTrueIf True (default) decode the box score into a DataFrame; if False return the raw JSON dict.
return_as_pandasboolFalseIf True return a pandas DataFrame; otherwise polars. Ignored when return_parsed=False.

Returns

A polars DataFrame by default (pandas when return_as_pandas=True) with one row per team or player stat, every column Utf8, and zero rows (same columns) for an empty payload; the raw editorial boxscore JSON dict when return_parsed=False: | Column | Type | Description | |---|---|---| | game_id | Utf8 | Dotted Yahoo game id (ncaaf.g.<date><n>). | | team_id | Utf8 | Dotted Yahoo team id (ncaaf.t.<n>); null for a player missing from the lineups. | | home_away | Utf8 | "home" or "away". | | player_id | Utf8 | Dotted Yahoo player id (ncaaf.p.<n>); null on team-stat rows. | | stat_category | Utf8 | Passing, Rushing, Receiving, Kicking, Returns, Punting, Defense or Team. | | stat_type_id | Utf8 | Yahoo stat type id (ncaaf.stat_type.105). | | stat_name | Utf8 | Stat name (Yards, Third Down Efficiency). | | stat_abbreviation | Utf8 | Short stat label (Yds, 3DE). | | stat_variation | Utf8 | Stat variation name (Game). | | value | Utf8 | Stat value as Yahoo sends it ("188", "73.2", "1-14"). |

col_nametypedescription
game_idcharacterESPN game identifier.
team_idcharacterESPN team id.
home_awaycharacterhome or away.
player_idcharacterESPN player id from the roster entry.
stat_categorycharacter
stat_type_idcharacter
stat_namecharacterInternal stat key (e.g. passingYards).
stat_abbreviationcharacter
stat_variationcharacter
valuecharacterMetric value.

Example

from sportsdataverse.cfb import yahoo_cfb_boxscore
box = yahoo_cfb_boxscore("ncaaf.g.202509200023")

# Raw JSON (includes play-by-play and drives)

raw = yahoo_cfb_boxscore("ncaaf.g.202509200023", return_parsed=False)

# Wide team box (one line)

box.filter(pl.col("player_id").is_null()).pivot("stat_name", index="team_id", values="value")

yahoo_cfb_player_season_stats​

yahoo_cfb_player_season_stats(season: 'int' = 2024, *, league_structure: 'str' = 'ncaaf.struct.div.1', count: 'int' = 200, qualified: 'bool' = False, return_parsed: 'bool' = True, return_as_pandas: 'bool' = False, **kwargs: 'Any') -> "Union[pl.DataFrame, 'pd.DataFrame', Dict[str, Any]]"

Yahoo CFB player season stats (modern; one wide row per player).

Wraps the shangrila leagueStatsIndividual query, which returns every stat group (passing/rushing/receiving/...) in one call, pivoted wide with one column per statId. NCAAF data is available 2013-present.

Parameters

ParameterTypeDefaultDescription
seasonint2024Season year (2013-present). Defaults to 2024.
league_structurestr'ncaaf.struct.div.1'Yahoo league-structure id (division filter). Defaults to "ncaaf.struct.div.1" (FBS).
countint200Maximum number of players to request. Defaults to 200.
qualifiedboolFalseRestrict to qualified leaders only. Defaults to False.
return_parsedboolTrueIf True (default) flatten to a DataFrame; if False return the raw JSON dict.
return_as_pandasboolFalseIf True return a pandas DataFrame; otherwise polars. Ignored when return_parsed=False.

Returns

A wide polars DataFrame (default), a pandas DataFrame when return_as_pandas=True, or the raw JSON dict when return_parsed=False. Includes a self-describing season column.

col_nametypedescription
player_idcharacterESPN player id from the roster entry.
display_namecharacterHuman-readable metric name.
teamcharacterTeam name.
team_abbreviationcharacterTeam abbreviation.
passing_completionscharacterPass completions (split from CFBD's C/ATT field).
rushing_attempts_per_gamecharacter
sacks_yards_lostcharacter
solo_tacklescharacter
kickoff_return_touchdownscharacter
field_goals_30_to_39character
longest_puntcharacter
passing_touchdownscharacter
field_goals_20_to_29character
kickoff_returnscharacter
field_goals_made_20_29character
games_rushingcharacter
games_defensecharacter
forced_fumblescharacter
interception_return_yardscharacter
punt_return_touchdownscharacter
longest_field_goalcharacter
sacks_takencharacter
receiving_yards_per_receptioncharacter
receiving_yardscharacter
field_goals_made_30_39character
field_goals_made_50_pluscharacter
games_offensecharacter
puntscharacter
field_goals_madecharacter
field_goals_50_pluscharacter
all_purpose_yardscharacter
interception_return_touchdownscharacter
field_goal_percentagecharacter
field_goals_made_0_19character
rushing_touchdownscharacter
punt_yards_per_puntcharacter
field_goal_attempts_40_49character
sackscharacterTeam sacks.
field_goals_made_40_49character
longest_rushcharacter
games_returnscharacter
return_yards_per_kickoffcharacter
rushing_yards_per_gamecharacter
longest_receptioncharacter
rushing_yardscharacterTeam rushing yards.
games_kickingcharacter
passing_yards_per_attemptcharacter
rushing_yards_per_attemptcharacter
completion_percentagecharacter
total_tacklescharacter
games_puntingcharacter
passing_yards_per_gamecharacter
passes_defendedcharacter
longest_passcharacter
points_scored_kickingcharacter
passing_yardscharacter
receiving_yards_per_gamecharacter
rushing_attemptscharacterTeam rushing attempts.
games_passingcharacter
field_goal_attempts_50_pluscharacter
targetscharacter
qb_ratingcharacter
games_receivingcharacter
longest_kickoff_returncharacter
safetiescharacter
tackle_assistscharacter
passing_attemptscharacterPass attempts (split from CFBD's C/ATT field).
extra_point_attemptscharacter
interceptions_forcedcharacter
extra_points_madecharacter
punt_yardscharacter
receptionscharacter
field_goal_attempts_30_39character
field_goals_40_to_49character
punt_return_yardscharacterTeam punt return yards.
field_goal_attemptscharacter
longest_punt_returncharacter
field_goal_attempts_20_29character
field_goal_attempts_0_19character
kickoff_return_yardscharacter
punt_returnscharacterNumber of punt returns.
sacks_yardscharacter
field_goals_0_to_19character
receiving_touchdownscharacter
extra_point_percentagecharacter
tackles_for_losscharacterTeam tackles for a loss.
passing_interceptionscharacter
return_yards_per_puntcharacter
seasonintegerSeason (4-digit year).

Example

from sportsdataverse.cfb import yahoo_cfb_player_season_stats
df = yahoo_cfb_player_season_stats(season=2024)

yahoo_cfb_player_season_stats_legacy​

yahoo_cfb_player_season_stats_legacy(season: 'int' = 2024, category: 'str' = 'Passing', sort_stat: 'str' = 'PASSING_YARDS', *, league_structure: 'str' = 'ncaaf.struct.div.1', count: 'int' = 200, return_parsed: 'bool' = True, return_as_pandas: 'bool' = False, **kwargs: 'Any') -> "Union[pl.DataFrame, 'pd.DataFrame', Dict[str, Any]]"

Yahoo CFB legacy per-category player leaders (one wide row per player).

Wraps the legacy seasonStatsFootball{Category}Ncaaf query (one stat category per call), pivoted wide with one column per statId.

Parameters

ParameterTypeDefaultDescription
seasonint2024Season year (2013-present). Defaults to 2024.
categorystr'Passing'Stat category, one of {"Passing", "Rushing", "Receiving", "Defense", "Kicking", "Punting", "Returns"}. Defaults to "Passing".
sort_statstr'PASSING_YARDS'Required FootballStatId to sort by (see the catalog vocab). Defaults to "PASSING_YARDS".
league_structurestr'ncaaf.struct.div.1'Yahoo league-structure id (division filter). Defaults to "ncaaf.struct.div.1" (FBS).
countint200Maximum number of players to request. Defaults to 200.
return_parsedboolTrueIf True (default) flatten to a DataFrame; if False return the raw JSON dict.
return_as_pandasboolFalseIf True return a pandas DataFrame; otherwise polars. Ignored when return_parsed=False.

Returns

A wide polars DataFrame (default), a pandas DataFrame when return_as_pandas=True, or the raw JSON dict when return_parsed=False. Includes self-describing season and category columns.

col_nametypedescription
player_idcharacterESPN player id from the roster entry.
display_namecharacterHuman-readable metric name.
teamcharacterTeam name.
team_abbreviationcharacterTeam abbreviation.
games_rushingcharacter
rushing_attemptscharacterTeam rushing attempts.
rushing_yardscharacterTeam rushing yards.
rushing_yards_per_gamecharacter
rushing_yards_per_attemptcharacter
rushing_touchdownscharacter
longest_rushcharacter
seasonintegerSeason (4-digit year).
categorycharacterCFBD stats category name (e.g. passing, rushing, defensive).

Example

from sportsdataverse.cfb import yahoo_cfb_player_season_stats_legacy
df = yahoo_cfb_player_season_stats_legacy(
season=2024, category="Rushing", sort_stat="RUSHING_YARDS"
)

yahoo_cfb_scoreboard​

yahoo_cfb_scoreboard(season: 'int', week: 'int' = 1, *, count: 'int' = 500, return_parsed: 'bool' = True, return_as_pandas: 'bool' = False, **kwargs: 'Any') -> "Union[pl.DataFrame, 'pd.DataFrame', Dict[str, Any]]"

Yahoo CFB scoreboard (one row per game).

Wraps the editorial scoreboard resource and flattens the games map. season is required — there is no meaningful default for a weekly scoreboard and the API has no concept of "current season". The full raw payload also carries teams/leagues/odds maps (use return_parsed=False).

Parameters

ParameterTypeDefaultDescription
seasonintSeason year (required).
weekint1Schedule week number. Defaults to 1.
countint500Maximum number of games to request. Defaults to 500.
return_parsedboolTrueIf True (default) flatten the games map to a DataFrame; if False return the raw JSON dict.
return_as_pandasboolFalseIf True return a pandas DataFrame; otherwise polars. Ignored when return_parsed=False.

Returns

A polars DataFrame (default) with one row per game, a pandas DataFrame when return_as_pandas=True, or the raw JSON dict when return_parsed=False. Includes self-describing season and week columns.

col_nametypedescription
gameidcharacterDate-encoded Yahoo composite game id for this row (e.g., "ncaaf.g.202509200023").
global_gameidcharacterYahoo cross-provider game id, distinct from the date-encoded gameid (e.g., "ncaaf.g.13556882").
start_timecharacterGame start time.
is_time_tbalogicalFlag indicating that the scheduled start time has not yet been announced.
season_phase_idcharacterIdentifier of the season phase the game falls in (e.g., "season.phase.season").
game_typecharacter
winning_team_idcharacterComposite Yahoo team id of the side that won the game (e.g., "ncaaf.t.29").
is_rank_upsetlogicalFlag indicating that the lower-ranked side won, judged against the teams' poll rankings.
is_spread_upsetlogicalFlag indicating that the winning side was the betting underdog against the closing spread.
outcome_typecharacterOutcome classification for a completed game (e.g., "outcome.type.won", "outcome.type.tied").
home_team_idcharacterESPN home team id (parsed from home_team_ref).
away_team_idcharacterESPN away team id (parsed from away_team_ref).
week_numbercharacter
navigation_linkscharacter
sportacular_urlcharacterDeep link into the Yahoo Sportacular mobile app for this game (a "ysportacular://" URL).
status_display_namecharacterShort game or event status as shown on the scoreboard (e.g., "Final", "12:00 pm ET").
status_descriptioncharacter
status_typecharacterStatus type.
total_away_pointscharacterPoints scored by the away team in the game.
current_period_idcharacterOrdinal number of the period currently in progress, counting from 1.
total_home_pointscharacterPoints scored by the home team in the game.
total_away_shootout_pointscharacterShootout goals converted by the away team, populated only for sports that break ties by shootout.
total_home_shootout_pointscharacterShootout goals converted by the home team, populated only for sports that break ties by shootout.
home_team_statscharacterJSON-encoded team-stat block for the home team, populated once the game is under way.
away_team_statscharacterJSON-encoded team-stat block for the away team, populated once the game is under way.
game_period_ballscharacterBalls in the count for the at-bat in progress; baseball only.
game_period_strikescharacterStrikes in the count for the at-bat in progress; baseball only.
game_period_outscharacterOuts recorded so far in the current half-inning; baseball only.
yards_to_endzonecharacterDistance from the current ball spot to the opponent's goal line, in yards.
start_yardlinecharacterYard line at the drive start.
distancecharacterYards to gain for a first down (or to the goal line in goal-to-go situations).
downcharacterDown of the play (1-4).
team_in_possessioncharacterYahoo team id of the side currently in possession of the ball.
power_play_strength_homecharacterNumber of skaters the home team has on the ice during special-teams play; hockey only.
power_play_strength_awaycharacterNumber of skaters the away team has on the ice during special-teams play; hockey only.
game_time_elapsedcharacterPlaying time elapsed in the game, in seconds.
game_time_elapsed_displaycharacterPlaying time elapsed formatted for display (e.g., "67:12"), used by sports whose clock counts up.
inning_statuscharacterHalf-inning indicator for a game in progress (e.g., "Top", "Bottom"); baseball only.
away_timeoutscharacterAway-team timeouts remaining.
home_timeoutscharacterHome-team timeouts remaining.
is_halftimecharacterFlag indicating that the game is currently stopped at halftime.
minimum_periodsintegerNumber of periods a game of this sport runs before overtime is required (4 for football, 9 for baseball).
game_periodsintegerJSON-encoded list of the game's period nodes, each carrying a period number and its display names.
baserunnerscharacterJSON-encoded baserunner occupancy for the game in progress; baseball only.
seasonintegerSeason (4-digit year).
subleaguecharacterSub-league the game belongs to, for leagues split into constituent circuits.
subleague_display_namecharacterDisplay name of the sub-league the game belongs to.
agg_scorecharacterAggregate score across the legs of a two-leg tie, populated only for competitions decided on aggregate.
leg_numbercharacterOrdinal of this leg within a multi-leg tie, counting from 1.
tv_coveragecharacterNetwork carrying the game, as a short broadcast abbreviation (e.g., "CBS", "ESPN").
provider_coveragecharacter
seatgeek_idcharacterSeatGeek performer or event identifier used to build the ticket-purchase link.
last_updatedcharacterTimestamp ESPN last refreshed the power index.
teamscharacter
play_by_playcharacterJSON-encoded data-island pointer to the game's play-by-play collection in the same editorial payload.
pitchescharacterJSON-encoded data-island pointer to the game's pitch-level feed; baseball only.
at_batcharacterJSON-encoded data-island pointer to the game's current at-bat feed; baseball only.
penalty_summarycharacter
scoring_summarycharacter
stat_categoriescharacterJSON-encoded pointer to the stat-category dictionary that groups this feed's statistics.
stadiumcharacter
stadium_idcharacter
stadium_imagecharacterJSON-encoded data-island pointer to the venue photograph used on the game page.
attendancecharacterReported attendance at the game.
lineupscharacterJSON-encoded data-island pointer to the game's lineup collection.
top_performercharacterJSON-encoded data-island pointer to the game's top-performing players.
playerscharacter
bylinecharacter
highlightcharacterJSON-encoded data-island pointer to the game's highlight video.
highlightscharacterGame highlight urls.
live_videocharacterJSON-encoded data-island pointer to the live video stream for the game.
oddscharacterJSON-encoded data-island pointer to the game's odds collection.
current_playerscharacterJSON-encoded data-island pointer to the players currently on the field, ice or court.
last_playcharacterFree-text description of the most recent play.
series_typecharacterJSON-encoded data-island pointer to the kind of series the game belongs to.
series_statuscharacterJSON-encoded data-island pointer to the current state of the series the game belongs to.
gamescharacterNumber of games included in the ATS summary.
series_gamescharacterJSON-encoded data-island pointer to the games making up the series.
game_detailscharacterJSON-encoded data-island pointer to supplementary detail notes for the game.
section_notescharacterJSON-encoded data-island pointer to editorial section notes attached to the game page.
articlescharacterJSON-encoded data-island pointer to the editorial articles attached to the game.
tweetscharacterJSON-encoded data-island pointer to the social posts attached to the game page.
playoff_roundcharacter
media_streamcharacterJSON-encoded data-island pointer to the game's media-stream collection.
playoff_series_statuscharacterJSON-encoded data-island pointer to the current state of the playoff series the game belongs to.
playoff_series_detailscharacterJSON-encoded data-island pointer to detail about the playoff series the game belongs to.
drivescharacterJSON-encoded data-island pointer to the game's drive collection; football only.
user_teams_gamecharacterJSON-encoded data-island pointer to the viewer's followed-team context for the game.
page_metadatacharacterJSON-encoded data-island pointer to the SEO and page metadata for the entity.
penalty_boxcharacterJSON-encoded data-island pointer to the game's penalty-box feed; hockey only.
starting_pitcherscharacterJSON-encoded data-island pointer to the game's announced starting pitchers; baseball only.
unrestricted_streamscharacterJSON-encoded data-island pointer to the streams viewable without a subscription.
tv_detailscharacterJSON-encoded list of broadcast entries for the game, each carrying a network abbreviation and full channel name (e.g., [{"abbr": "NBC", "name": "NBC/Peacock"}]).
away_seedcharacter
home_seedcharacter
weekintegerGame week of the season.

Example

from sportsdataverse.cfb import yahoo_cfb_scoreboard
df = yahoo_cfb_scoreboard(season=2024, week=1)

yahoo_cfb_team_season_stats​

yahoo_cfb_team_season_stats(season: 'int' = 2024, *, league_structure: 'str' = 'ncaaf.struct.div.1', count: 'int' = 200, return_parsed: 'bool' = True, return_as_pandas: 'bool' = False, **kwargs: 'Any') -> "Union[pl.DataFrame, 'pd.DataFrame', Dict[str, Any]]"

Yahoo CFB team season stats (modern; one wide row per team).

Wraps the shangrila leagueStatsByTeam query (all stat groups in one call, pivoted wide with one column per statId).

Parameters

ParameterTypeDefaultDescription
seasonint2024Season year (2013-present). Defaults to 2024.
league_structurestr'ncaaf.struct.div.1'Yahoo league-structure id (division filter). Defaults to "ncaaf.struct.div.1" (FBS).
countint200Maximum number of teams to request. Defaults to 200.
return_parsedboolTrueIf True (default) flatten to a DataFrame; if False return the raw JSON dict.
return_as_pandasboolFalseIf True return a pandas DataFrame; otherwise polars. Ignored when return_parsed=False.

Returns

A wide polars DataFrame (default), a pandas DataFrame when return_as_pandas=True, or the raw JSON dict when return_parsed=False. Includes a self-describing season column.

col_nametypedescription
teamcharacterTeam name.
team_abbreviationcharacterTeam abbreviation.
receiving_yards_rankcharacter
passing_touchdownscharacter
rushing_attemptscharacterTeam rushing attempts.
rushing_yards_allowed_per_attemptcharacter
points_per_gamecharacter
receiving_first_downs_allowedcharacter
receiving_yards_allowed_per_gamecharacter
passing_yards_per_gamecharacter
total_offensive_yards_per_gamecharacter
interceptions_forced_rankcharacter
rushing_yards_allowed_per_gamecharacter
total_offensive_yards_per_game_rankcharacter
receiving_yardscharacter
points_per_game_rankcharacter
rushing_yards_rankcharacter
receiving_yards_allowedcharacter
rushing_touchdownscharacter
points_allowed_per_game_rankcharacter
third_down_attemptscharacter
sacks_takencharacter
total_yards_allowed_per_game_rankcharacter
rushing_yards_per_attemptcharacter
rushing_touchdowns_allowed_per_gamecharacter
longest_passcharacter
completion_percentagecharacter
receptionscharacter
receiving_yards_per_receptioncharacter
interceptions_forcedcharacter
passing_completions_per_gamecharacter
team_penaltiescharacter
rushing_first_downs_allowedcharacter
receiving_yards_per_gamecharacter
points_allowedcharacterPoints for the opponent.
points_allowed_rankcharacter
total_yards_allowed_per_gamecharacter
rushing_attempts_allowedcharacterOpponent rushing attempts.
games_kickingcharacter
completion_percentage_allowedcharacter
rushing_yards_allowed_per_game_rankcharacter
receiving_touchdownscharacter
games_puntingcharacter
total_offensive_yardscharacter
pointscharacterTotal points accumulated by the school in the poll's weighted voting.
rushing_yards_per_game_rankcharacter
passing_yards_per_attemptcharacter
receptions_per_gamecharacter
rushing_first_downscharacter
receiving_first_downscharacter
passing_first_downscharacter
points_rankcharacter
passing_yards_allowed_per_gamecharacter
fourth_down_conversionscharacter
receptions_allowedcharacter
passing_attempts_per_gamecharacter
passing_yardscharacter
rushing_touchdowns_allowedcharacter
receiving_touchdowns_allowedcharacter
receptions_allowed_per_gamecharacter
rushing_yards_allowedcharacterOpponent rushing yards.
games_receivingcharacter
sacks_rankcharacter
points_allowed_per_gamecharacter
rushing_yardscharacterTeam rushing yards.
games_rushingcharacter
longest_rushcharacter
games_offensecharacter
fourth_down_conversion_percentagecharacter
receiving_touchdowns_allowed_per_gamecharacter
passing_attempts_allowed_per_gamecharacter
passing_first_downs_allowedcharacter
passing_completionscharacterPass completions (split from CFBD's C/ATT field).
total_offensive_yards_rankcharacter
time_of_possession_per_game_rankcharacter
offensive_penalty_yards_lostcharacter
team_penalty_yards_lostcharacter
passing_yards_per_game_rankcharacter
interception_return_touchdownscharacter
passing_yards_allowed_per_game_rankcharacter
sacks_yards_lostcharacter
games_defensecharacter
passing_yards_allowedcharacter
passing_touchdowns_allowedcharacter
games_passingcharacter
passing_completions_allowed_per_gamecharacter
passing_touchdowns_allowed_per_gamecharacter
rushing_yards_per_gamecharacter
fourth_down_attemptscharacter
passing_yards_rankcharacter
rushing_attempts_per_gamecharacter
third_down_conversion_percentagecharacter
passing_attemptscharacterPass attempts (split from CFBD's C/ATT field).
passing_interceptionscharacter
first_downscharacterFirst downs earned by the team.
first_downs_per_gamecharacter
rushing_attempts_allowed_per_gamecharacter
third_down_conversionscharacter
time_of_possession_per_gamecharacter
offensive_penaltiescharacter
seasonintegerSeason (4-digit year).

Example

from sportsdataverse.cfb import yahoo_cfb_team_season_stats
df = yahoo_cfb_team_season_stats(season=2024)

yahoo_cfb_team_season_stats_legacy​

yahoo_cfb_team_season_stats_legacy(season: 'int' = 2024, category: 'str' = 'Passing', sort_stat: 'str' = 'PASSING_YARDS', *, league_structure: 'str' = 'ncaaf.struct.div.1', count: 'int' = 200, return_parsed: 'bool' = True, return_as_pandas: 'bool' = False, **kwargs: 'Any') -> "Union[pl.DataFrame, 'pd.DataFrame', Dict[str, Any]]"

Yahoo CFB legacy per-category team stats (one wide row per team).

Wraps the legacy seasonTeamStatsFootball{Category} query (one stat category per call), pivoted wide with one column per statId.

Parameters

ParameterTypeDefaultDescription
seasonint2024Season year (2013-present). Defaults to 2024.
categorystr'Passing'Stat category, one of {"Passing", "Rushing", "Receiving", "Defense", "Kicking", "Punting", "Returns", "Kickoffs", "Offense"}. Defaults to "Passing".
sort_statstr'PASSING_YARDS'Required FootballStatId to sort by. Defaults to "PASSING_YARDS".
league_structurestr'ncaaf.struct.div.1'Yahoo league-structure id (division filter). Defaults to "ncaaf.struct.div.1" (FBS).
countint200Maximum number of teams to request. Defaults to 200.
return_parsedboolTrueIf True (default) flatten to a DataFrame; if False return the raw JSON dict.
return_as_pandasboolFalseIf True return a pandas DataFrame; otherwise polars. Ignored when return_parsed=False.

Returns

A wide polars DataFrame (default), a pandas DataFrame when return_as_pandas=True, or the raw JSON dict when return_parsed=False. Includes self-describing season and category columns.

col_nametypedescription
teamcharacterTeam name.
team_abbreviationcharacterTeam abbreviation.
games_rushingcharacter
rushing_attemptscharacterTeam rushing attempts.
rushing_yardscharacterTeam rushing yards.
rushing_yards_per_attemptcharacter
rushing_attempts_per_gamecharacter
rushing_yards_per_gamecharacter
rushing_touchdownscharacter
rushing_first_downscharacter
longest_rushcharacter
rushing_fumblescharacter
rushing_fumbles_lostcharacter
seasonintegerSeason (4-digit year).
categorycharacterCFBD stats category name (e.g. passing, rushing, defensive).

Example

from sportsdataverse.cfb import yahoo_cfb_team_season_stats_legacy
df = yahoo_cfb_team_season_stats_legacy(
season=2024, category="Rushing", sort_stat="RUSHING_YARDS"
)

yahoo_cfb_teams​

yahoo_cfb_teams(season: 'int', week: 'int' = 1, *, return_parsed: 'bool' = True, return_as_pandas: 'bool' = False, **kwargs: 'Any') -> "Union[pl.DataFrame, 'pd.DataFrame', Dict[str, Any]]"

Yahoo CFB team directory (one row per team).

Yahoo has no standalone teams resource (the documented sports.league.teams resource 404s without auth). Instead the editorial scoreboard payload is "fat": one call embeds the full ~186-team directory under service.scoreboard.teams keyed by the dotted ncaaf.t.<id> team id. This wrapper pulls that map for the requested (season, week) and projects it to the directory columns -- it is the Yahoo side of sportsdataverse.cfb.cfb_teams_crosswalk.

Parameters

ParameterTypeDefaultDescription
seasonintSeason year (required; the scoreboard is fetched to obtain the embedded teams map).
weekint1Schedule week used to fetch the scoreboard. Defaults to 1. The embedded directory is the full league list regardless of week.
return_parsedboolTrueIf True (default) flatten the teams map to a DataFrame; if False return the raw scoreboard JSON dict.
return_as_pandasboolFalseIf True return a pandas DataFrame; otherwise polars. Ignored when return_parsed=False.

Returns

A polars DataFrame (default) with one row per team -- columns team_id, abbreviation, display_name, full_name, location, nickname, conference, conference_abbreviation, conference_id, division, division_id, seatgeek_id -- a pandas DataFrame when return_as_pandas=True, or the raw scoreboard JSON dict when return_parsed=False.

col_nametypedescription
team_idcharacterESPN team id.
abbreviationcharacterMetric abbreviation.
display_namecharacterHuman-readable metric name.
full_namecharacterVenue full name (e.g. Tenney Stadium).
locationcharacterTeam location / school name.
nicknamecharacterTeam nickname / location label.
conferencecharacterConference of the team.
conference_abbreviationcharacter
conference_idcharacterReferencing conference id.
divisioncharacterDivision in the conference for the team.
division_idcharacter
seatgeek_idcharacterSeatGeek performer or event identifier used to build the ticket-purchase link.

Example

from sportsdataverse.cfb import yahoo_cfb_teams
teams = yahoo_cfb_teams(season=2024)
abbr = dict(zip(teams["team_id"], teams["abbreviation"]))