This function allows you to read leaderboard data from BaseballSavant directly into R as data frame.
Usage
statcast_leaderboards(
leaderboard = "exit_velocity_barrels",
year = 2018,
abs = 50,
min_pa = "q",
min_pitches = 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.
- 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_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.
Value
Returns a tibble of Statcast leaderboard data with the following columns (for leaderboard: 'exit_velocity_barrels'):
col_name | types |
year | numeric |
last_name | character |
first_name | character |
player_id | integer |
attempts | integer |
avg_hit_angle | numeric |
anglesweetspotpercent | numeric |
max_hit_speed | numeric |
avg_hit_speed | numeric |
fbld | numeric |
gb | numeric |
max_distance | integer |
avg_distance | integer |
avg_hr_distance | integer |
ev95plus | integer |
ev95per-swing | numeric |
ev95percent | numeric |
barrels | integer |
brl_percent | numeric |
brl_pa | numeric |
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
# \donttest{
try(statcast_leaderboards(leaderboard = "exit_velocity_barrels", year = 2018))
#> ── MLB Baseball Savant Statcast Leaderboards data from baseballsavant.ml
#> ℹ Data updated: 2022-04-30 07:17:23 UTC
#> # A tibble: 138 × 20
#> year last_name first_name player_id attempts avg_hit_angle
#> <dbl> <chr> <chr> <int> <int> <dbl>
#> 1 2018 Gallo Joey 608336 293 21.9
#> 2 2018 Davis Khris 501981 408 18.1
#> 3 2018 Martinez J.D. 502110 430 10.8
#> 4 2018 Betts Mookie 605141 434 18.5
#> 5 2018 Trout Mike 545361 351 18.6
#> 6 2018 Hernández Teoscar 606192 316 17
#> 7 2018 Cruz Nelson 443558 400 12.8
#> 8 2018 Stanton Giancarlo 519317 416 11.7
#> 9 2018 Yelich Christian 592885 441 5
#> 10 2018 Báez Javier 595879 444 9.6
#> # … with 128 more rows, and 14 more variables:
#> # anglesweetspotpercent <dbl>, max_hit_speed <dbl>,
#> # avg_hit_speed <dbl>, fbld <dbl>, gb <dbl>, max_distance <int>,
#> # avg_distance <int>, avg_hr_distance <int>, ev95plus <int>,
#> # `ev95per-swing` <dbl>, ev95percent <dbl>, barrels <int>,
#> # brl_percent <dbl>, brl_pa <dbl>
# }