statcast_leaderboards function

Query Baseball Savant Leaderboards

Query Baseball Savant Leaderboards

This function allows you to read leaderboard data from BaseballSavant directly into R as data frame.

statcast_leaderboards( leaderboard = "exit_velocity_barrels", year = 2020, abs = 50, min_pa = "q", min_pitches = 100, min_throws = 100, min_field = "q", min_run = 0, player_type = "batter", fielding_type = "player", oaa_position = "", oaa_roles = "", team = "", arsenal_type = "n_", run_type = "raw", min2b = 5, min3b = 0, position = "", bats = "", hand = "" )

Arguments

  • leaderboard: The type of leaderboard to retrieve, input as a string. Current options include exit_velocity_barrels, expected_statistics, pitch_arsenal, outs_above_average, directional_oaa, catch_probability, pop_time, sprint_speed, and running_splits_90_ft, arm_strength.
  • year: The season for which you want data.
  • abs: The minimum number of batted balls. Applies only to exit_velocity_barrels leaderboards.
  • min_pa: Minimum number of plate appearances. Can be a number or 'q' for qualified batters.
  • min_pitches: Minimum number of pitches thrown.
  • min_throws: Minimum number of throwing opportunities.
  • min_field: Minimum number of fieding opportunities.
  • min_run: Minimum number of running opportunities.
  • player_type: One of either 'batter' or pitcher. For the expected_statistics leaderboard, 'batter-team' and 'pitcher-team' are also available.
  • fielding_type: One of either 'player' or 'team'.
  • oaa_position: Can be either the number position of a player or 'if' or 'of' for position categories.
  • oaa_roles: Can be either the number position of a player or 'if' or 'of' for position categories.
  • team: An abbreviation for a team. Can be left blank.
  • arsenal_type: One of either 'n_', 'avg_spin', or 'avg_speed'.
  • run_type: One of either 'percent' or 'raw'.
  • min2b: The minimum number of throwing attempts to second base.
  • min3b: The minimum number of throwing attempts to third base.
  • position: The numeric position of the player. For DH use 10. Can be left blank.
  • bats: The handedness of the batter. One of 'R' or 'L'. Can be left blank.
  • hand: The handedness of the pitcher. One of 'R' or 'L'. Can be left blank.

Returns

Returns a tibble of Statcast leaderboard data with the following columns (for leaderboard: 'exit_velocity_barrels'):

col_nametypes
yearnumeric
last_namecharacter
first_namecharacter
player_idinteger
attemptsinteger
avg_hit_anglenumeric
anglesweetspotpercentnumeric
max_hit_speednumeric
avg_hit_speednumeric
fbldnumeric
gbnumeric
max_distanceinteger
avg_distanceinteger
avg_hr_distanceinteger
ev95plusinteger
ev95per-swingnumeric
ev95percentnumeric
barrelsinteger
brl_percentnumeric
brl_panumeric

Details

oaa_roles argument: 30 = 1B - Straight Up 31 = 1B - Towards 1B/2B Hole 32 = 1B - Close to Line 40 = 2B - Straight Up 41 = 2B - Shaded Towards 2B Bag 42 = 2B - Towards 1B/2B Hole 43 = 2B - Behind First Basemen 46 = 2B - Up the Middle 60 = SS - Straight Up 61 = SS - Towards 3B/SS Hole 62 = SS - Shaded Towards 2B Bag 64 = SS - Up the Middle 50 = 3B - Straight Up 51 = 3B - Close to Line 52 = 3B - Towards 3B/SS Hole 77 = LF - Close to Line 71 = LF - Leaning Left 70 = LF - Straight Up 72 = LF - Leaning Right 78 = LF - LF Gap 87 = CF - LF Gap 81 = CF - Leaning Left 82 = CF - Leaning Right 89 = CF - RF Gap 98 = RF - RF Gap 91 = RF - Leaning Left 90 = RF - Straight Up 92 = RF - Leaning Right 99 = RF - Close to Line

Examples

try(statcast_leaderboards(leaderboard = "expected_statistics", year = 2018)) try(statcast_leaderboards(leaderboard = "arm_strength", year = 2020))