Skip to main content
Version: 0.1.5

MLB dataset loaders

Pipeline: scrape / raw → enrich → release asset → load_*()

Automation status​

DatasetRelease tagPipeline
load_mlb_re24_matrixmlb_game_state—
load_mlb_we_tablemlb_game_state—
load_mlb_wpamlb_game_state—
load_mlb_pbpmlb_pbp—
load_mlb_pitchesmlb_pitches—
load_mlb_runnersmlb_runners—
load_mlb_expected_statsmlb_hitting_models—
load_mlb_expected_hrmlb_hitting_models—
load_mlb_batter_projectionmlb_hitting_models—
load_mlb_oaamlb_fielding_models—
load_mlb_catcher_framingmlb_fielding_models—
load_mlb_xeramlb_pitching_models—
load_mlb_stuff_plusmlb_pitching_models—
load_mlb_command_plusmlb_pitching_models—
load_ncaa_baseball_pbpncaa_baseball_pbp—
load_ncaa_baseball_schedulencaa_baseball_schedules—
load_ncaa_baseball_teamsncaa_baseball_teams—
load_ncaa_baseball_rostersncaa_baseball_rosters—
load_ncaa_baseball_linescorencaa_baseball_linescore—
load_ncaa_baseball_team_statsncaa_baseball_team_stats—
load_ncaa_baseball_player_statsncaa_baseball_player_stats—
load_ncaa_baseball_situational_statsncaa_baseball_situational_stats—
load_ncaa_baseball_gamesncaa_baseball_games—
load_mlb_groupsmlb_groups—
load_mlb_group_seasonsmlb_groups—
load_mlb_group_aliasesmlb_groups—
load_mlb_team_group_seasonsmlb_groups—
load_ncaa_baseball_groupsncaa_baseball_groups—
load_ncaa_baseball_group_seasonsncaa_baseball_groups—
load_ncaa_baseball_group_aliasesncaa_baseball_groups—
load_ncaa_baseball_team_group_seasonsncaa_baseball_groups—
load_mlb_park_dimensionsmlb_parks—

load_mlb_re24_matrix​

Release: mlb_game_state · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_game_state/mlb_re24_matrix_{season}.parquet

Returns​

col_nametypedescription
base_stateStringThree-character pre-play base occupancy where each slot carries its base number when occupied and an underscore when empty, so ___ is bases empty and 123 is bases loaded.
outsInt64Outs in the inning after the play.
reFloat64Mean runs the batting team went on to score from this base-out state through the end of the half-inning, with bottom-of-the-9th-and-later halves excluded to avoid walk-off selection bias.
nUInt32Plate appearances observed starting in this base-out state, the sample size behind re.
seasonInt64Season year.
load_mlb_re24_matrix(seasons=2024)

load_mlb_we_table​

Release: mlb_game_state · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_game_state/mlb_we_table_{season}.parquet

Returns​

col_nametypedescription
inning_cappedInt64Inning number with the ninth and every extra inning collapsed into 9, so extras share the ninth-inning win-expectancy cells.
halfString
base_stateStringThree-character pre-play base occupancy where each slot carries its base number when occupied and an underscore when empty, so ___ is bases empty and 123 is bases loaded.
outs_startInt64Outs already recorded when the plate appearance began, normally 0 through 2, though a handful of published rows carry a stale 3 that the RE24 matrix filters out but this table does not.
score_diff_bucketInt64Home score minus away score before the play, clipped to the range -6 through +6 so blowouts collapse into the end buckets.
home_win_expFloat64Home team win expectancy before the play.
nUInt32Plate appearances observed in this state bucket, the sample size behind the Laplace-smoothed home_win_exp.
thinBooleanWhether the win-expectancy cell was estimated from a thin sample of historical games.
seasonInt64Season year.
load_mlb_we_table(seasons=2024)

load_mlb_wpa​

Release: mlb_game_state · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_game_state/mlb_wpa_{season}.parquet

Returns​

col_nametypedescription
game_idStringUnique ESPN game/event identifier.
at_bat_indexInt64Zero-based index of the at-bat within the game.
wpaFloat64
seasonInt64Season year.
load_mlb_wpa(seasons=2024)

load_mlb_pbp​

Release: mlb_pbp · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_pbp/mlb_pbp_{season}.parquet

Returns​

col_nametypedescription
game_pkInt64statsapi game identifier; the join key to every other MLB release.
at_bat_indexInt64Zero-based index of the plate appearance within the game; joins to mlb_pitches and mlb_runners.
inningInt64Inning number, counting from 1; extra innings continue the sequence.
half_inningStringtop or bottom.
batter_idInt64statsapi person id of the batter.
pitcher_idInt64statsapi person id of the pitcher.
event_typeStringMachine-readable plate-appearance outcome (e.g. single, strikeout, field_out).
eventStringHuman-readable outcome of the plate appearance.
descriptionStringNarrative text for the plate appearance.
rbiInt64Runs batted in credited to this plate appearance.
away_scoreInt64Away score AFTER the plate appearance.
home_scoreInt64Home score AFTER the plate appearance.
is_scoring_playBooleanWhether the plate appearance scored a run.
outsInt64Outs recorded after the plate appearance.
start_timeStringUTC timestamp when the plate appearance began; null in older seasons.
end_timeStringUTC timestamp when the plate appearance ended; null in older seasons.
post_on_first_idInt64Person id on first base after the plate appearance; null when unoccupied.
post_on_second_idInt64Person id on second base after the plate appearance; null when unoccupied.
post_on_third_idInt64Person id on third base after the plate appearance; null when unoccupied.
load_mlb_pbp(seasons=2024)

load_mlb_pitches​

Release: mlb_pitches · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_pitches/mlb_pitches_{season}.parquet

Returns​

col_nametypedescription
game_pkInt64statsapi game identifier; the join key to every other MLB release.
at_bat_indexInt64Zero-based index of the plate appearance within the game; joins to mlb_pbp and mlb_runners.
pitch_numberInt64One-based pitch number within the plate appearance.
batter_idInt64statsapi person id of the batter.
pitcher_idInt64statsapi person id of the pitcher.
pitch_typeStringClassified pitch-type code (FF, SL, CH, ...). statsapi pitchData, measured fill: ~0% before 2007, 45.7% in 2007 (mid-season PITCHf/x rollout across ballparks), 96.6% in 2008, ~100% from 2015. Null for pitches the system never tracked.
pitch_nameStringHuman-readable pitch type. statsapi pitchData, measured fill: ~0% before 2007, 45.7% in 2007 (mid-season PITCHf/x rollout across ballparks), 96.6% in 2008, ~100% from 2015. Null for pitches the system never tracked.
call_codeStringUmpire call code (B, C, S, X, ...).
call_descriptionStringHuman-readable umpire call.
ballsInt64Ball count BEFORE the pitch.
strikesInt64Strike count BEFORE the pitch.
outsInt64Outs BEFORE the pitch.
start_speedFloat64Release speed in mph. statsapi pitchData, measured fill: ~0% before 2007, 45.7% in 2007 (mid-season PITCHf/x rollout across ballparks), 96.6% in 2008, ~100% from 2015. Null for pitches the system never tracked.
end_speedFloat64Speed crossing the plate in mph. statsapi pitchData, measured fill: ~0% before 2007, 45.7% in 2007 (mid-season PITCHf/x rollout across ballparks), 96.6% in 2008, ~100% from 2015. Null for pitches the system never tracked.
spin_rateFloat64Spin rate in rpm. statsapi pitchData, measured fill: ~0% before 2007, 45.7% in 2007 (mid-season PITCHf/x rollout across ballparks), 96.6% in 2008, ~100% from 2015. Null for pitches the system never tracked.
extensionFloat64Release extension toward the plate in feet. Later than the rest of pitchData: measured 0% through 2016 and ~100% from 2017, so it is null for the 2007-2016 PITCHf/x seasons that do carry speed and spin.
pxFloat64Horizontal location crossing the plate in feet from the plate's centre, catcher's view. statsapi pitchData, measured fill: ~0% before 2007, 45.7% in 2007 (mid-season PITCHf/x rollout across ballparks), 96.6% in 2008, ~100% from 2015. Null for pitches the system never tracked.
pzFloat64Height crossing the plate in feet above the ground. statsapi pitchData, measured fill: ~0% before 2007, 45.7% in 2007 (mid-season PITCHf/x rollout across ballparks), 96.6% in 2008, ~100% from 2015. Null for pitches the system never tracked.
sz_topFloat64Top of the batter's strike zone in feet. Derived from the batter, not pitchData, so it is populated back to 1988.
sz_botFloat64Bottom of the batter's strike zone in feet. Derived from the batter, not pitchData, so it is populated back to 1988.
launch_speedFloat64Exit velocity off the bat in mph. statsapi hitData, Statcast-era and batted balls only: null before 2015 and ~17% populated after, which is the share of pitches put in play rather than a coverage gap.
launch_angleFloat64Vertical launch angle in degrees. statsapi hitData, Statcast-era and batted balls only: null before 2015 and ~17% populated after, which is the share of pitches put in play rather than a coverage gap.
total_distanceFloat64Batted-ball distance travelled in feet. statsapi hitData, Statcast-era and batted balls only: null before 2015 and ~17% populated after, which is the share of pitches put in play rather than a coverage gap.
trajectoryStringBatted-ball trajectory (ground_ball, line_drive, fly_ball, popup). Legacy scorer field, batted balls only: ~20% populated in every season back to 1988, and present long before Statcast.
hardnessStringScorer's contact-quality grade (soft, medium, hard). Legacy scorer field, batted balls only: ~20% populated in every season back to 1988, and present long before Statcast.
load_mlb_pitches(seasons=2024)

load_mlb_runners​

Release: mlb_runners · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_runners/mlb_runners_{season}.parquet

Returns​

col_nametypedescription
game_pkInt64statsapi game identifier; the join key to every other MLB release.
at_bat_indexInt64Zero-based index of the plate appearance within the game; joins to mlb_pbp and mlb_pitches.
runner_idInt64statsapi person id of the baserunner.
origin_baseStringBase the runner occupied when the plate appearance began; null for the batter.
start_baseStringBase the runner started this movement from; null when the movement begins at the plate.
end_baseStringBase the runner finished on; null when retired or when scoring is recorded by is_scoring_event.
out_baseStringBase at which the runner was retired; null when not retired.
is_outBooleanWhether the runner was retired on this movement.
out_numberInt64Which out of the half-inning this retirement was; null when not retired.
eventStringHuman-readable event that caused the movement.
event_typeStringMachine-readable event that caused the movement.
movement_reasonStringstatsapi reason code for a movement not caused by the plate appearance itself (e.g. r_stolen_base_2b).
is_scoring_eventBooleanWhether this movement scored a run.
rbiBooleanWhether the run was credited as an RBI to the batter.
earnedBooleanWhether the run was earned against the responsible pitcher.
responsible_pitcher_idInt64statsapi person id of the pitcher charged with the runner.
load_mlb_runners(seasons=2024)

load_mlb_expected_stats​

Release: mlb_hitting_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_hitting_models/mlb_expected_stats_{season}.parquet

Returns​

col_nametypedescription
batterInt64MLBAM player id of the batter.
seasonInt64Season year.
paInt64Plate appearances for the batter in the season, counted as the Statcast rows that END a plate appearance (a non-empty events value). Pitches within a plate appearance are not counted.
abInt64At-bats, derived from the same plate-appearance-ending rows by excluding walks, hit-by-pitches, sacrifice flies, sacrifice bunts and catcher's interference.
xwobaFloat64Expected wOBA blending the exit-velocity by launch-angle grid's predicted contact value on balls in play with realized wOBA value on walks, hit-by-pitches and strikeouts, over the wOBA denominator; low-sample batters can exceed 1.
xbaFloat64Grid-predicted hit probability summed over the at-bat balls in play that carry launch data, plus the realized hit for balls in play Statcast did not track, divided by at-bats, on the conventional batting-average scale. An untracked ball in play takes its realized outcome exactly as xwoba does, rather than counting in ab with a zero numerator, which deflated league-mean xBA by the untracked share.
xslgFloat64The same construction on total bases -- grid-predicted total bases where launch data exists, realized total bases for untracked balls in play -- divided by at-bats, on the conventional slugging scale.
wobaFloat64Actual weighted on-base average (wOBA) for the player over the sample.
baFloat64Actual batting average for the player over the sample (0-1), alongside the expected-stat columns.
load_mlb_expected_stats(seasons=2024)

load_mlb_expected_hr​

Release: mlb_hitting_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_hitting_models/mlb_expected_hr_{season}.parquet

Returns​

col_nametypedescription
batterInt64MLBAM player id of the batter.
seasonInt64Season year.
hrInt64Home runs hit by the batter over the covered sample.
xhr_neutralFloat64Park-neutral expected home runs, summing over the batter's balls in play the home-run probability read off the exit-velocity by launch-angle by spray-angle grid.
xhr_park_adjFloat64The same expected-home-run sum after scaling each ball by its ballpark's Savant home-run park factor over 100; published values run between 0.77 and 1.26 times xhr_neutral.
hr_above_expectedFloat64Home runs actually hit minus xhr_neutral, so it grades over- and under-performance against the park-neutral expectation rather than the park-adjusted one.
load_mlb_expected_hr(seasons=2024)

load_mlb_batter_projection​

Release: mlb_hitting_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_hitting_models/mlb_batter_projection_{season}.parquet

Returns​

col_nametypedescription
batterInt64MLBAM player id of the batter.
ageInt64Player age (in years).
proj_xwobaFloat64Projected expected weighted on-base average for the batter.
proj_paFloat64Combined prior-three-season pa behind the projection, its effective sample size; it inherits the pitch-row counting of load_mlb_expected_stats pa rather than true plate appearances.
load_mlb_batter_projection(seasons=2024)

load_mlb_oaa​

Release: mlb_fielding_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_fielding_models/mlb_oaa_{season}.parquet

Returns​

col_nametypedescription
fielder_idStringMLBAM identifier of the fielder charged with the ball in play, resolved from whichever fielder_N column matches the responsible position and published as a string rather than an integer.
positionInt64Listed roster position (G, F, C, etc.).
opportunitiesUInt32Balls in play charged to this fielder at this position, the sample the oaa sum runs over.
oaaFloat64Outs above average: outs the fielder actually recorded minus what a per-position catch-probability logistic expected from the same batted-ball trajectories, summed across their opportunities.
seasonInt64Season year.
load_mlb_oaa(seasons=2024)

load_mlb_catcher_framing​

Release: mlb_fielding_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_fielding_models/mlb_catcher_framing_{season}.parquet

Returns​

col_nametypedescription
catcher_idStringMLBAM identifier of the receiving catcher, taken from Savant's fielder_2 and published as a string rather than an integer.
takesUInt32Called strikes plus balls the catcher received across the season, a pure workload count; the framing figures themselves sum only over the shadow-zone subset of these.
framing_runsFloat64Runs saved by receiving, summing actual called strike minus modeled strike probability times that count's strike run value over shadow-zone takes only.
strikes_gainedFloat64The same shadow-zone sum of actual called strike minus modeled strike probability left unweighted by run value, so it measures stolen strikes rather than runs.
seasonInt64Season year.
load_mlb_catcher_framing(seasons=2024)

load_mlb_xera​

Release: mlb_pitching_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_pitching_models/mlb_xera_{season}.parquet

Returns​

col_nametypedescription
pitcherInt64Whether the position is a pitcher.
seasonInt64Season year.
x_wobaFloat64Expected weighted on-base average, derived from batted-ball quality rather than outcomes.
x_eraFloat64ERA-scale conversion of x_woba as league_era plus (x_woba minus league_woba) over woba_scale times pa_per_9, an exact linear function of x_woba that can go negative for extreme pitchers.
load_mlb_xera(seasons=2024)

load_mlb_stuff_plus​

Release: mlb_pitching_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_pitching_models/mlb_stuff_plus_{season}.parquet

Returns​

col_nametypedescription
pitcherInt64Whether the position is a pitcher.
pitch_typeStringAbbreviation of the pitch type thrown (e.g. FF, SL, CH).
stuff_rv_hatFloat64Mean predicted per-pitch run value from the bundled xgboost stuff model over this pitcher's pitches of this type, on Savant's batter-perspective delta_run_exp scale so lower is better for the pitcher.
stuff_plusFloat64Stuff+ on the 100-is-average scale, exactly 100 minus 10 times (stuff_rv_hat minus the league mean) over the league SD, so higher is better and outlier run-value predictions can push it well below zero.
seasonInt64Season year.
load_mlb_stuff_plus(seasons=2024)

load_mlb_command_plus​

Release: mlb_pitching_models · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_pitching_models/mlb_command_plus_{season}.parquet

Returns​

col_nametypedescription
pitcherInt64Whether the position is a pitcher.
location_rv_hatFloat64Mean predicted per-pitch run value from the bundled location model, which sees plate location, count, handedness and pitch type but no raw pitch physics; lower is better for the pitcher.
command_plusFloat64Command+/Location+ on the 100-is-average scale, exactly 100 minus 10 times (location_rv_hat minus the league mean) over the league SD; it grades where the pitch finished, not intent, since Statcast ships no catcher target.
seasonInt64Season year.
load_mlb_command_plus(seasons=2024)

load_ncaa_baseball_pbp​

Release: ncaa_baseball_pbp · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_pbp/ncaa_baseball_pbp_{season}.parquet

Returns​

col_nametypedescription
contest_idStringstats.ncaa.org contest (game) identifier.
inningInt64Inning number.
inning_top_botStringHalf-inning ("top" or "bot").
battingStringWhether the situation applies to batting stats.
fieldingStringWhether the situation applies to fielding stats.
play_numberInt64
score_awayInt64
score_homeInt64
batterStringMLBAM player id of the batter.
play_typeStringPlay category the NCAA baseball parser classified from the play text: single, double, triple, home_run, strikeout, walk, hit_by_pitch, groundout, flyout, lineout, out, double_play, fielders_choice, reached_on_error, stolen_base, wild_pitch, passed_ball, runner_advance, substitution, other, or unknown when the clause could not be classified.
hit_trajectoryStringBatted-ball trajectory: one of ground, line, fly, pop, foul.
fielded_positionStringFree-text description of where/how the ball was fielded or the runner advanced, as written by the scorer.
is_hitBooleanWhether the plate appearance resulted in a hit.
is_outBooleanWhether the play recorded at least one out.
strikeout_typeStringHow the strikeout ended: 'swinging' or 'looking'.
is_sacrificeBooleanWhether the play was scored as a sacrifice.
sac_typeStringKind of sacrifice when one was scored: 'fly' or 'bunt'.
is_double_playBooleanWhether the play resulted in a double play.
rbiInt64Runs batted in.
count_ballsInt64Ball count when the plate appearance resolved.
count_strikesInt64Strike count when the plate appearance resolved.
pitch_sequenceStringPer-pitch result string for the plate appearance (e.g. 'BBKKS'), one character per pitch.
error_positionStringFielding position credited with the error, as the feed labels it (e.g. 'ss', 'rf', 'c').
unearnedBooleanWhether the run(s) on the play were scored as unearned.
runs_scoredInt64Runs that scored on the play.
scoring_runnersList(String)List of runner names who scored on the play.
runners_advancedList(String)List of 'runner->base' strings describing each runner's advance on the play.
outs_on_playInt64Number of outs recorded on the play (0-3).
is_scoring_playBooleanFlag indicating that the play put points on the board (1 = scoring play, 0 = not).
descriptionStringLong-form description text.
sourceStringSource.
espn_game_idString
game_keyStringNCAA contest identifier for the game the row belongs to; the join key to the other ncaa_baseball_* tables.
game_dateStringGame date (YYYY-MM-DD).
locationStringTeam city/region (e.g. "Los Angeles").
attendanceInt64Reported attendance (NA on the redesigned page).
seasonInt64Season year.
load_ncaa_baseball_pbp(seasons=2023)

load_ncaa_baseball_schedule​

Release: ncaa_baseball_schedules · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_schedules/ncaa_baseball_schedule_{season}.parquet

Returns​

col_nametypedescription
team_idStringUnique ESPN team identifier.
team_nameStringTeam name.
dateStringDate in YYYY-MM-DD format.
game_numberInt64Game number within a doubleheader.
opponent_idStringUnique identifier for opponent.
opponentString
resultStringWin/loss/tie result for team_id.
outcomeStringResult for the team the row is keyed to: 'W', 'L' or 'T'.
team_scoreInt64Team's score / final score.
opponent_scoreInt64Opponent score.
contest_idStringstats.ncaa.org contest (game) identifier.
attendanceInt64Reported attendance (NA on the redesigned page).
divisionInt64NCAA division (1, 2, 3).
seasonInt64Season year.
load_ncaa_baseball_schedule(seasons=2023)

load_ncaa_baseball_teams​

Release: ncaa_baseball_teams · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_teams/ncaa_baseball_teams_{season}.parquet

Returns​

col_nametypedescription
team_idStringUnique ESPN team identifier.
team_nameStringTeam name.
divisionInt64NCAA division (1, 2, 3).
seasonInt64Season year.
load_ncaa_baseball_teams(seasons=2025)

load_ncaa_baseball_rosters​

Release: ncaa_baseball_rosters · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_rosters/ncaa_baseball_rosters_{season}.parquet

Returns​

col_nametypedescription
team_idStringUnique ESPN team identifier.
team_nameStringTeam name.
player_idStringstats.ncaa.org player identifier.
player_nameStringPlayer name.
jerseyStringJersey number worn by the player.
statcrew_jerseyStringStatCrew jersey number; present in the schema but entirely unpopulated in the published asset.
player_classStringClass year as the feed reports it (Fr., So., Jr., Sr.); '---' when unreported.
positionStringPosition the NCAA baseball feed reports for the player.
heightStringHeight (feet and inches).
weightInt64Weight in pounds.
hometownString
high_schoolString
games_playedInt64Games played.
games_startedInt64Games started.
seasonInt64Season year.
load_ncaa_baseball_rosters(seasons=2025)

load_ncaa_baseball_linescore​

Release: ncaa_baseball_linescore · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_linescore/ncaa_baseball_linescore_{season}.parquet

Returns​

col_nametypedescription
contest_idStringstats.ncaa.org contest (game) identifier.
teamStringTeam.
home_awayStringVenue label for the team ('home' or 'away').
inningStringInning number.
runsInt64Runs scored.
runs_totalInt64Total runs scored by the team across the whole game.
hitsInt64Hits.
errorsInt64Fielding errors.
game_dateStringGame date (YYYY-MM-DD).
venueString
attendanceInt64Reported attendance (NA on the redesigned page).
sourceStringSource.
espn_game_idString
game_keyStringNCAA contest identifier for the game the row belongs to; the join key to the other ncaa_baseball_* tables.
locationStringTeam city/region (e.g. "Los Angeles").
seasonInt64Season year.
load_ncaa_baseball_linescore(seasons=2025)

load_ncaa_baseball_team_stats​

Release: ncaa_baseball_team_stats · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_team_stats/ncaa_baseball_team_stats_{season}.parquet

Returns​

col_nametypedescription
contest_idStringstats.ncaa.org contest (game) identifier.
categoryStringCategory label.
statString
periodStringInning number.
away_teamStringAway team name.
away_valueStringAway team's value for the stat named by the row, as a string (the table is long/tidy, one stat per row).
home_teamStringHome team name.
home_valueStringHome team's value for the stat named by the row, as a string (the table is long/tidy, one stat per row).
sourceStringSource.
espn_game_idString
game_keyStringNCAA contest identifier for the game the row belongs to; the join key to the other ncaa_baseball_* tables.
game_dateStringGame date (YYYY-MM-DD).
locationStringTeam city/region (e.g. "Los Angeles").
attendanceInt64Reported attendance (NA on the redesigned page).
seasonInt64Season year.
load_ncaa_baseball_team_stats(seasons=2025)

load_ncaa_baseball_player_stats​

Release: ncaa_baseball_player_stats · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_player_stats/ncaa_baseball_player_stats_{season}.parquet

Returns​

col_nametypedescription
contest_idStringstats.ncaa.org contest (game) identifier.
team_idStringUnique ESPN team identifier.
numberStringJersey number.
nameStringDisplay name.
positionStringPosition the NCAA baseball feed reports for the player.
rStringRuns scored.
abStringAt-bats.
hStringHits.
2bStringDoubles hit by the batter.
3bStringTriples hit by the batter.
tbStringTotal bases accumulated by the batter.
hrStringHome runs hit by the batter over the covered sample.
rbiStringRuns batted in.
bbStringBases on balls (walks).
hbpStringTimes the batter was hit by a pitch.
sfStringSacrifice flies hit by the batter.
shStringSacrifice hits (bunts) laid down by the batter.
kStringStrikeouts.
opp_dpStringDouble plays turned by the opposing defense against this side.
csStringTimes the baserunner was caught stealing.
pickedStringTimes the baserunner was picked off.
sbStringStolen bases by the baserunner.
ibbStringIntentional bases on balls drawn by the batter.
klStringStrikeouts looking -- called third strikes, as opposed to swinging strikeouts.
categoryStringCategory label.
sourceStringSource.
espn_game_idString
game_keyStringNCAA contest identifier for the game the row belongs to; the join key to the other ncaa_baseball_* tables.
game_dateStringGame date (YYYY-MM-DD).
locationStringTeam city/region (e.g. "Los Angeles").
attendanceInt64Reported attendance (NA on the redesigned page).
ipStringInnings pitched.
erStringEarned runs.
soStringStrikeouts: the batter's strikeouts on the batting line, the pitcher's strikeouts recorded on the pitching line.
bfStringBatters faced by the pitcher.
2b_aStringDoubles allowed by the pitcher.
3b_aStringTriples allowed by the pitcher.
bkStringBalks charged to the pitcher.
hr_aStringHome runs allowed by the pitcher.
wpStringWild pitches charged to the pitcher.
hbStringBatters hit by a pitch from this pitcher.
inh_runStringInherited runners on base when this relief pitcher entered.
inh_run_scoreStringInherited runners who subsequently scored.
shaStringSacrifice hits allowed by the pitcher.
sfaStringSacrifice flies allowed by the pitcher.
tuerStringTeam unearned runs scored while this pitcher was in the game.
pickoffsStringPickoffs.
poStringPutouts recorded by the fielder.
aStringFielding assists credited to the player.
tcStringTotal chances for the fielder (putouts + assists + errors).
eStringErrors charged to the fielder.
ciStringTimes the batter reached base on catcher's interference.
pbStringPassed balls charged to the catcher.
sbaStringStolen bases allowed while this catcher was behind the plate.
csbStringRunners caught stealing while this catcher was behind the plate.
idpStringTimes the batter grounded into a double play.
tpStringTriple plays the player took part in.
sbapctStringStolen-base success rate allowed by the catcher, as a PROPORTION on 0-1 (e.g. 0.625), not a percentage.
seasonInt64Season year.
load_ncaa_baseball_player_stats(seasons=2025)

load_ncaa_baseball_situational_stats​

Release: ncaa_baseball_situational_stats · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_situational_stats/ncaa_baseball_situational_stats_{season}.parquet

Returns​

col_nametypedescription
contest_idStringstats.ncaa.org contest (game) identifier.
team_seqInt64Side indicator for the row: 0 and 1 distinguish the two teams in the contest.
playerString
positionStringPosition the NCAA baseball feed reports for the player.
with_runrsStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- plate appearances with runners on base.
hits_scoreposStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- at-bats with runners in scoring position.
vs_lhpStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- batting against left-handed pitching.
vs_rhpStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- batting against right-handed pitching.
leadoff_pctStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- leadoff batters reaching base; despite the name it is a pair string, not a percentage.
rbi3rdStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- chances to drive in a runner from third.
h_pinchitStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- pinch-hitting appearances.
adv_opsStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- advancing-opportunity situations.
with_2_outsStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- plate appearances with two outs.
with_runrs2StringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- secondary runners-on split emitted by the feed.
with_scorepos2StringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- secondary runners-in-scoring-position split emitted by the feed.
bases_emptyStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- plate appearances with the bases empty.
bases_loadedStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- plate appearances with the bases loaded.
categoryStringCategory label.
sourceStringSource.
espn_game_idString
game_keyStringNCAA contest identifier for the game the row belongs to; the join key to the other ncaa_baseball_* tables.
game_dateStringGame date (YYYY-MM-DD).
locationStringTeam city/region (e.g. "Los Angeles").
attendanceInt64Reported attendance (NA on the redesigned page).
runnersStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- plate appearances with runners on base.
vs_lhbStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- pitching against left-handed batters.
with_2outsStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- two-out split under the feed's second, unpunctuated key (distinct column from with_2_outs).
emtpyStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- bases-empty split under the upstream feed's misspelled key ('emtpy', sic).
with_scoreposStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- plate appearances with runners in scoring position.
with_runners2StringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- secondary runners-on split emitted by the feed alongside with_runrs2.
vs_rhbStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- pitching against right-handed batters.
field_pctStringSituational split as a 'successes-opportunities' pair string (e.g. '5-13'), not a numeric rate -- fielding chances handled cleanly; despite the name it is a pair string, not a fielding percentage.
seasonInt64Season year.
load_ncaa_baseball_situational_stats(seasons=2025)

load_ncaa_baseball_games​

Release: ncaa_baseball_games · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_games/ncaa_baseball_games_{season}.parquet

Returns​

col_nametypedescription
game_keyStringNCAA contest identifier for the game the row belongs to; the join key to the other ncaa_baseball_* tables.
contest_idStringstats.ncaa.org contest (game) identifier.
game_pbp_idInt64stats.ncaa.org play-by-play (contest) identifier.
seasonInt64Season year.
sourceStringSource.
espn_game_idString
away_teamStringAway team name.
away_finalInt64Final runs scored by the away team.
home_teamStringHome team name.
home_finalInt64Final runs scored by the home team.
load_ncaa_baseball_games(seasons=2024)

load_mlb_groups​

Release: mlb_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_groups/mlb_groups.parquet

Coverage

One season-less file: one row per group lineage (the league, subdivisions, conferences, divisions) with the first and last season it had members. group_id is SDV's own id (e.g. mlb:al-east) and names a lineage: a rename that keeps continuity keeps the id, a new body gets a new one, and notes records each call. Seasons are the calendar year.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("mlb"); the prefix of every group_id in it.
group_idStringSDV group id, {league}:{slug}. It names a lineage: renames that keep continuity keep the id, and a new body (a new conference, or a merger the sources treat as new) gets a new one.
levelStringHierarchy level of the group: "league", "subdivision", "conference" or "division".
first_seasonInt32First season in which the group had at least one member (calendar year).
last_seasonInt32Last season in which the group had at least one member (calendar year).
notesStringBuilder notes on the group: the lineage decisions behind its group_id and any source caveats.
load_mlb_groups()

load_mlb_group_seasons​

Release: mlb_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_groups/mlb_group_seasons.parquet

Coverage

One season-less file: one row per group per season it existed, with its name, short name, abbreviation and parent group AS OF that season (never today's label applied to the past) and its member count. season is the calendar year.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("mlb"); the prefix of every group_id in it.
group_idStringSDV group id, {league}:{slug}. It names a lineage: renames that keep continuity keep the id, and a new body (a new conference, or a merger the sources treat as new) gets a new one.
seasonInt32Season the row describes (calendar year).
levelStringHierarchy level of the group: "league", "subdivision", "conference" or "division".
nameStringFull name of the group as of that season -- the label in use then, not today's name.
short_nameStringShort display name of the group as of that season.
abbreviationStringAbbreviation of the group as of that season.
parent_group_idStringgroup_id one level up as of that season (division -> conference -> subdivision -> league); null at the top level or where no higher group applied that season.
n_teamsInt32Number of member teams in the group that season.
load_mlb_group_seasons()

load_mlb_group_aliases​

Release: mlb_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_groups/mlb_group_aliases.parquet

Coverage

One season-less file: every name, abbreviation, slug and source id that a source (espn, mlb) uses for a group, each with the seasons it is valid for (valid_from / valid_to, inclusive; null = unbounded). Match a source's conference or division label here to reach group_id.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("mlb"); the prefix of every group_id in it.
group_idStringSDV group id, {league}:{slug}. It names a lineage: renames that keep continuity keep the id, and a new body (a new conference, or a merger the sources treat as new) gets a new one.
sourceStringSource that uses this label or id (in this table: espn, mlb); "sdv" marks SDV's own labels.
source_idStringThe source's own id for the group (ESPN group id, NCAA conf_id, CFBD id, MLB division id) when it has one; null otherwise.
name_kindStringKind of label in value: "name", "short_name", "abbreviation", "slug" or "code".
valueStringThe label exactly as the source writes it; match a source's conference or division label against it to reach group_id.
valid_fromInt32First season the alias is valid for, inclusive (calendar year); null = unbounded.
valid_toInt32Last season the alias is valid for, inclusive (calendar year); null = unbounded (still in use).
load_mlb_group_aliases()

load_mlb_team_group_seasons​

Release: mlb_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_groups/mlb_team_group_seasons_{season}.parquet

Coverage

One row per team per season: the SDV subdivision, conference and division group ids the team belonged to that season (null where a level does not apply), the team name as of that season, where the membership came from, and whether a second source agreed (null when only one source covers the season). team_id is a string: the ESPN team id where ESPN covers the team, otherwise the MLB Stats API id; team_id_source names the id space. season is the calendar year; seasons 1901-2026.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("mlb"); the prefix of every group_id in it.
seasonInt32Season of the membership (calendar year).
team_idStringTeam id as a string: the ESPN team id where ESPN covers the team, otherwise the league's own id; team_id_source says which.
team_id_sourceStringId space of team_id (in this table: espn, mlb).
team_nameStringTeam name as of that season, not today's.
subdivision_idStringSDV group_id of the team's subdivision that season (e.g. FBS / FCS, Division I); null where the league has no subdivision level.
conference_idStringSDV group_id of the team's conference that season; null where the team had no conference (an independent, or a season played without conferences).
division_idStringSDV group_id of the team's division that season; null where the level does not apply.
sourceStringSource the membership was taken from -- the most reliable per-season source for that era.
sources_agreeBooleanWhether a second source agreed on the membership; null when only one source covers the season.
notesStringBuilder notes on the team-season, such as a source disagreement or which of several listed memberships was kept.
load_mlb_team_group_seasons(seasons=2024)

load_ncaa_baseball_groups​

Release: ncaa_baseball_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_groups/ncaa_baseball_groups.parquet

Coverage

One season-less file: one row per group lineage (the league, subdivisions, conferences, divisions) with the first and last season it had members. group_id is SDV's own id (e.g. ncaa_baseball:acc) and names a lineage: a rename that keeps continuity keeps the id, a new body gets a new one, and notes records each call. Seasons are the calendar year.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("ncaa_baseball"); the prefix of every group_id in it.
group_idStringSDV group id, {league}:{slug}. It names a lineage: renames that keep continuity keep the id, and a new body (a new conference, or a merger the sources treat as new) gets a new one.
levelStringHierarchy level of the group: "league", "subdivision", "conference" or "division".
first_seasonInt32First season in which the group had at least one member (calendar year).
last_seasonInt32Last season in which the group had at least one member (calendar year).
notesStringBuilder notes on the group: the lineage decisions behind its group_id and any source caveats.
load_ncaa_baseball_groups()

load_ncaa_baseball_group_seasons​

Release: ncaa_baseball_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_groups/ncaa_baseball_group_seasons.parquet

Coverage

One season-less file: one row per group per season it existed, with its name, short name, abbreviation and parent group AS OF that season (never today's label applied to the past) and its member count. season is the calendar year.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("ncaa_baseball"); the prefix of every group_id in it.
group_idStringSDV group id, {league}:{slug}. It names a lineage: renames that keep continuity keep the id, and a new body (a new conference, or a merger the sources treat as new) gets a new one.
seasonInt32Season the row describes (calendar year).
levelStringHierarchy level of the group: "league", "subdivision", "conference" or "division".
nameStringFull name of the group as of that season -- the label in use then, not today's name.
short_nameStringShort display name of the group as of that season.
abbreviationStringAbbreviation of the group as of that season.
parent_group_idStringgroup_id one level up as of that season (division -> conference -> subdivision -> league); null at the top level or where no higher group applied that season.
n_teamsInt32Number of member teams in the group that season.
load_ncaa_baseball_group_seasons()

load_ncaa_baseball_group_aliases​

Release: ncaa_baseball_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_groups/ncaa_baseball_group_aliases.parquet

Coverage

One season-less file: every name, abbreviation, slug and source id that a source (ncaa, sdv) uses for a group, each with the seasons it is valid for (valid_from / valid_to, inclusive; null = unbounded). Match a source's conference or division label here to reach group_id.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("ncaa_baseball"); the prefix of every group_id in it.
group_idStringSDV group id, {league}:{slug}. It names a lineage: renames that keep continuity keep the id, and a new body (a new conference, or a merger the sources treat as new) gets a new one.
sourceStringSource that uses this label or id (in this table: ncaa, sdv); "sdv" marks SDV's own labels.
source_idStringThe source's own id for the group (ESPN group id, NCAA conf_id, CFBD id, MLB division id) when it has one; null otherwise.
name_kindStringKind of label in value: "name", "short_name", "abbreviation", "slug" or "code".
valueStringThe label exactly as the source writes it; match a source's conference or division label against it to reach group_id.
valid_fromInt32First season the alias is valid for, inclusive (calendar year); null = unbounded.
valid_toInt32Last season the alias is valid for, inclusive (calendar year); null = unbounded (still in use).
load_ncaa_baseball_group_aliases()

load_ncaa_baseball_team_group_seasons​

Release: ncaa_baseball_groups · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/ncaa_baseball_groups/ncaa_baseball_team_group_seasons_{season}.parquet

Coverage

One row per team per season: the SDV subdivision, conference and division group ids the team belonged to that season (null where a level does not apply), the team name as of that season, where the membership came from, and whether a second source agreed (null when only one source covers the season). team_id is a string: the stats.ncaa.org org id (not an ESPN id); team_id_source names the id space. season is the calendar year; seasons 2010-2026.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("ncaa_baseball"); the prefix of every group_id in it.
seasonInt32Season of the membership (calendar year).
team_idStringTeam id as a string: the ESPN team id where ESPN covers the team, otherwise the league's own id; team_id_source says which.
team_id_sourceStringId space of team_id (in this table: ncaa_org).
team_nameStringTeam name as of that season, not today's.
subdivision_idStringSDV group_id of the team's subdivision that season (e.g. FBS / FCS, Division I); null where the league has no subdivision level.
conference_idStringSDV group_id of the team's conference that season; null where the team had no conference (an independent, or a season played without conferences).
division_idStringSDV group_id of the team's division that season; null where the level does not apply.
sourceStringSource the membership was taken from -- the most reliable per-season source for that era.
sources_agreeBooleanWhether a second source agreed on the membership; null when only one source covers the season.
notesStringBuilder notes on the team-season, such as a source disagreement or which of several listed memberships was kept.
load_ncaa_baseball_team_group_seasons(seasons=2024)

load_mlb_park_dimensions​

Release: mlb_parks · asset https://github.com/sportsdataverse/sportsdataverse-data/releases/download/mlb_parks/mlb_park_dimensions.parquet

Coverage

One season-less file, seasons 2001 on: one row per MLB venue per season (regular-season, spring-training, neutral and international sites) from the MLB Stats API venues endpoint, with fence distances in feet at MLB's seven markers, capacity, turf, roof, azimuth, elevation and coordinates as of that season. venue_id is a string (the MLB Stats API venue id, venue.id in game feeds); venue_name is the name in use that season. The API lags or misses some fence moves: cited corrections (Camden Yards, Petco Park, T-Mobile Park, Comerica Park, 2022 Rate Field and Progressive Field) are applied and described in notes, which is null on uncorrected rows.

Returns​

col_nametypedescription
leagueStringLeague code of the table ("mlb").
seasonInt32Season the row describes (calendar year, 2001 on).
venue_idStringMLB Stats API venue id (venue.id in MLB game feeds and schedules), published as a string.
venue_nameStringVenue name as of that season (e.g. PacBell Park 2001-03, SBC Park 2004-05, AT&T Park 2006-18, Oracle Park 2019-), not today's name.
retro_park_idStringRetrosheet park id (e.g. "BOS07") from the MLB Stats API's cross-reference; null for most spring-training and minor-league parks.
left_line_ftInt32Distance in feet from home plate to the fence at the left-field foul pole.
left_ftInt32Distance in feet from home plate to the fence at MLB's left-field marker.
left_center_ftInt32Distance in feet from home plate to the fence at MLB's left-centre marker; a park may re-label which point this is (Oracle Park's reads 364 through 2019, then the 399 ft deep left-centre).
center_ftInt32Distance in feet from home plate to the fence in straightaway centre field.
right_center_ftInt32Distance in feet from home plate to the fence at MLB's right-centre marker.
right_ftInt32Distance in feet from home plate to the fence at MLB's right-field marker.
right_line_ftInt32Distance in feet from home plate to the fence at the right-field foul pole.
capacityInt32Seating capacity that season.
turf_typeStringPlaying surface: "Grass" or "Artificial Turf".
roof_typeStringRoof: "Open", "Retractable" or "Dome".
azimuth_degFloat64MLB's azimuthAngle: degrees clockwise from north of the line from home plate to centre field (Fenway Park 45, Progressive Field 0).
elevation_ftInt32Elevation of the venue in feet above sea level.
latitudeFloat64Latitude of the venue in decimal degrees.
longitudeFloat64Longitude of the venue in decimal degrees.
notesStringNull unless a curated correction applies to the row; then which columns changed, from what to what, why, and the citation.
load_mlb_park_dimensions()