
How to use `rvolleydata`
Matthew Chow
2025-08-27
Source:vignettes/rvolleydata-how-to-use.Rmd
rvolleydata-how-to-use.Rmd
Overview
This vignette will outline how to use the functions in the
rvolleydata
package to access data from League One
Volleyball Pro (LOVB), Athletes Unlimited Pro Volleyball (AUPVB), and
Major League Volleyball (MLV) leagues.
Installation
You can install the development version of rvolleydata
from GitHub
with:
# install.packages("devtools")
devtools::install_github("awosoga/rvolleydata")
Usage
The following code snippets will provide information on how to access different volleyball league statistics. The structure of the functions is similar across League One Volleyball Pro (LOVB) and Major League Volleyball (MLV), so LOVB functions will be used as an example.
Schedules
Use load_lovb_schedule
to access League One Volleyball
Pro (LOVB) schedules.
load_lovb_schedule <- load_lovb_schedule(2025)
glimpse(load_lovb_schedule)
#> Rows: 141
#> Columns: 8
#> $ match_id <dbl> 2161068, 2161068, 2161068, 2161068, 2161068, 2161068, 2…
#> $ season <dbl> 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2…
#> $ match_datetime <dttm> 2025-01-09 00:30:00, 2025-01-09 00:30:00, 2025-01-09 0…
#> $ officials_type <chr> "supervisor", "referee1", "referee2", "refereeChallenge…
#> $ full_name <chr> "MICHELLE PRATER", "PATI ROFF", "SAMARA SEVOR", "MARK P…
#> $ first_name <chr> "MICHELLE", "PATI", "SAMARA", "MARK", "APRIL", "ALAINA"…
#> $ last_name <chr> "PRATER", "ROFF", "SEVOR", "PRATER", "MIFFLIN", "SMITH …
#> $ level <chr> "AAA", "AAA", "AAA", "AAA", "AAA", "AAA", "AAA", "AAA",…
Player Info
Use load_aupvb_player_info
to access Athletes Unlimited
Pro Volleyball (AUPV) player information.
load_aupvb_player_info <- load_aupvb_player_info(2024)
glimpse(load_aupvb_player_info)
#> Rows: 648
#> Columns: 53
#> $ season <dbl> 2024, 2024, 2024, 2024, 2024, 202…
#> $ week_number <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
#> $ game_number <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
#> $ game_date <dttm> 2024-10-03, 2024-10-03, 2024-10-…
#> $ rank <dbl> 43, 37, 32, 4, 26, 6, 44, 13, 8, …
#> $ rank_change <dbl> -1, 4, 0, -1, -1, 0, -1, 1, 2, 0,…
#> $ cumulative_points <dbl> 140, 128, 155, 215, 183, 244, 169…
#> $ points_this_match <dbl> 140, 128, 155, 215, 183, 244, 169…
#> $ played_this_match <lgl> FALSE, TRUE, TRUE, TRUE, TRUE, TR…
#> $ first_name <chr> "Erin", "Sherridan", "Taylor", "M…
#> $ last_name <chr> "Fairs", "Atkinson", "Bruns Tegen…
#> $ uniform_number <dbl> 7, 55, 17, 46, 16, 1, 48, 18, 21,…
#> $ sets_played <dbl> 0, 1, 2, 3, 3, 3, 3, 3, 3, 0, 3, …
#> $ kills <dbl> 0, 0, 1, 0, 5, 9, 7, 12, 9, 0, 1,…
#> $ kills_per_set <dbl> 0.00, 0.00, 0.50, 0.00, 1.67, 3.0…
#> $ attack_attempts <dbl> 0, 1, 1, 0, 13, 33, 14, 29, 23, 0…
#> $ attack_errors <dbl> 0, 1, 0, 0, 2, 5, 3, 5, 2, 0, 0, …
#> $ attack_percentage <dbl> 0.00, -1.00, 1.00, 0.00, 0.23, 0.…
#> $ assists <dbl> 0, 0, 2, 4, 0, 0, 0, 0, 1, 0, 35,…
#> $ assists_per_set <dbl> 0.00, 0.00, 1.00, 1.33, 0.00, 0.0…
#> $ setting_errors <dbl> 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, …
#> $ service_aces <dbl> 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, …
#> $ service_aces_per_set <dbl> 0.00, 0.00, 0.00, 0.00, 0.33, 0.0…
#> $ service_errors <dbl> 0, 0, 0, 0, 0, 0, 2, 1, 1, 0, 0, …
#> $ total_reception_attempts <dbl> 0, 0, 0, 11, 2, 36, 1, 0, 17, 0, …
#> $ reception_errors <dbl> 0, 0, 0, 2, 0, 0, 0, 0, 1, 0, 0, …
#> $ positive_reception_pct <dbl> 0.00, 0.00, 0.00, 0.55, 0.50, 0.3…
#> $ digs <dbl> 0, 0, 1, 19, 1, 8, 1, 6, 10, 0, 9…
#> $ digs_per_set <dbl> 0.00, 0.00, 0.50, 6.33, 0.33, 2.6…
#> $ blocks <dbl> 0, 0, 0, 0, 0, 2, 1, 1, 2, 0, 2, …
#> $ blocks_per_set <dbl> 0.00, 0.00, 0.00, 0.00, 0.00, 0.6…
#> $ block_assists <dbl> 0, 0, 0, 0, 4, 0, 3, 0, 0, 0, 0, …
#> $ block_assists_per_set <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ primary_position_position_lk <chr> "OUTHT", "OPPHT", "SETTR", "LIB",…
#> $ primary_position_description <chr> "Outside Hitter", "Opposite", "Se…
#> $ primary_position_short_description <chr> "OUTHT", "OPPHT", "SETTR", "LIB",…
#> $ secondary_position_position_lk <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ secondary_position_description <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ secondary_position_short_description <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ current_roster_status_lk <chr> "IDL", "AC", "AC", "AC", "AC", "A…
#> $ current_roster_status_description <chr> "Injured - Temporary", "Active", …
#> $ is_home_team <lgl> FALSE, FALSE, FALSE, FALSE, FALSE…
#> $ team_color <chr> "#1C9AD6", "#1C9AD6", "#1C9AD6", …
#> $ home_team_name <chr> "Team Valentin-Anderson", "Team V…
#> $ away_team_name <chr> "Team Hentz", "Team Hentz", "Team…
#> $ season_id <dbl> 205, 205, 205, 205, 205, 205, 205…
#> $ season_type <chr> "Championship", "Championship", "…
#> $ player_id <dbl> 71, 81, 117, 220, 223, 277, 758, …
#> $ player_slug <chr> "erin-fairs", "sherridan-atkinson…
#> $ uniform_number_display <dbl> 7, 55, 17, 46, 16, 1, 48, 18, 21,…
#> $ team_id <dbl> 500, 500, 500, 500, 500, 500, 500…
#> $ type <chr> "Player", "Player", "Player", "Pl…
#> $ stat_type <chr> "Game Stats", "Game Stats", "Game…
Leaderboards
Use load_aupvb_leaderboards
to access Athletes Unlimited
Pro Volleyball (AUPV) leaderboards.
load_aupvb_leaderboards <- load_aupvb_leaderboards(2024)
glimpse(load_aupvb_leaderboards)
#> Rows: 660
#> Columns: 70
#> $ season <dbl> 2024, 2024, 2024, 2024, 2024, 2024,…
#> $ week_number <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ game_number <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ game_rank <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …
#> $ first_name <chr> "Khat", "Marlie", "Claire", "Dani",…
#> $ last_name <chr> "Bell", "Monserez", "Hoffman", "Dre…
#> $ uniform_number <dbl> 18, 33, 21, 1, 19, 46, 16, 48, 17, …
#> $ total_points <dbl> 282, 272, 257, 244, 230, 220, 171, …
#> $ mvp_points <dbl> 60, 20, 0, 0, 40, 0, 0, 0, 0, 0, 0,…
#> $ win_points <dbl> 140, 140, 140, 140, 40, 140, 140, 1…
#> $ stat_points <dbl> 82, 112, 117, 104, 150, 80, 31, 29,…
#> $ first_place_mvp <lgl> TRUE, FALSE, FALSE, FALSE, FALSE, F…
#> $ first_place_total_points <dbl> 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0…
#> $ second_place_mvp <lgl> FALSE, FALSE, FALSE, FALSE, TRUE, F…
#> $ second_place_total_points <dbl> 0, 0, 0, 0, 40, 0, 0, 0, 0, 0, 0, 0…
#> $ third_place_mvp <lgl> FALSE, TRUE, FALSE, FALSE, FALSE, F…
#> $ third_place_total_points <dbl> 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0…
#> $ defensive_mvp <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, …
#> $ defensive_mvp_total_points <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ set_wins <dbl> 2, 2, 2, 2, 1, 2, 2, 2, 2, 1, 2, 2,…
#> $ set_wins_total_points <dbl> 80, 80, 80, 80, 40, 80, 80, 80, 80,…
#> $ match_win <dbl> 1, 1, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1,…
#> $ match_win_total_points <dbl> 60, 60, 60, 60, 0, 60, 60, 60, 60, …
#> $ service_aces <dbl> 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,…
#> $ service_ace_points <dbl> 12, 12, 0, 0, 0, 0, 12, 0, 0, 0, 0,…
#> $ service_errors <dbl> 1, 0, 1, 0, 0, 0, 0, 2, 0, 0, 0, 0,…
#> $ service_error_points <dbl> -8, 0, -8, 0, 0, 0, 0, -16, 0, 0, 0…
#> $ attack_kills <dbl> 12, 1, 9, 9, 17, 0, 5, 7, 1, 0, 0, …
#> $ attack_kill_points <dbl> 96, 8, 72, 72, 136, 0, 40, 56, 8, 0…
#> $ attack_errors <dbl> 5, 0, 2, 5, 5, 0, 3, 3, 0, 0, 0, 0,…
#> $ attack_error_points <dbl> -60, 0, -24, -60, -60, 0, -36, -36,…
#> $ set_assists <dbl> 0, 35, 1, 0, 0, 4, 0, 0, 2, 32, 0, …
#> $ set_assist_points <dbl> 0, 35, 1, 0, 0, 4, 0, 0, 2, 32, 0, …
#> $ set_errors <dbl> 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0,…
#> $ set_error_points <dbl> 0, -12, 0, 0, 0, -12, 0, 0, 0, -12,…
#> $ digs <dbl> 6, 9, 10, 8, 8, 20, 1, 1, 1, 12, 0,…
#> $ dig_points <dbl> 30, 45, 50, 40, 40, 100, 5, 5, 5, 6…
#> $ good_receptions <dbl> 0, 0, 7, 14, 17, 6, 1, 1, 0, 0, 0, …
#> $ good_reception_points <dbl> 0, 0, 14, 28, 34, 12, 2, 2, 0, 0, 0…
#> $ reception_errors <dbl> 0, 0, 1, 0, 1, 2, 0, 0, 0, 0, 0, 0,…
#> $ reception_error_points <dbl> 0, 0, -12, 0, -12, -24, 0, 0, 0, 0,…
#> $ block_assists <dbl> 0, 0, 0, 0, 0, 0, 4, 3, 0, 0, 0, 0,…
#> $ block_assist_points <dbl> 0, 0, 0, 0, 0, 0, 8, 6, 0, 0, 0, 0,…
#> $ block_stuffs <dbl> 1, 2, 2, 2, 1, 0, 0, 1, 0, 2, 0, 0,…
#> $ block_stuff_points <dbl> 12, 24, 24, 24, 12, 0, 0, 12, 0, 24…
#> $ points_behind <dbl> NA, 10, 15, 13, 14, 10, 49, 2, 14, …
#> $ has_extra_inning_stats <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, …
#> $ is_captain <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, …
#> $ roster_status <chr> "Active", "Active", "Active", "Acti…
#> $ primary_position_position_lk <chr> "OPPHT", "SETTR", "OUTHT", "OUTHT",…
#> $ primary_position_description <chr> "Opposite", "Setter", "Outside Hitt…
#> $ primary_position_short_description <chr> "OPPHT", "SETTR", "OUTHT", "OUTHT",…
#> $ team_name <chr> "Team Hentz", "Team Hentz", "Team H…
#> $ team_color <chr> "#1C9AD6", "#1C9AD6", "#1C9AD6", "#…
#> $ team_seed <dbl> 3, 3, 3, 3, 2, 3, 3, 3, 3, 2, 3, 3,…
#> $ season_id <dbl> 205, 205, 205, 205, 205, 205, 205, …
#> $ competitor_id <dbl> 500, 500, 500, 500, 499, 500, 500, …
#> $ player_id <dbl> 986, 1025, 992, 277, 996, 220, 223,…
#> $ player_slug <chr> "khat-bell", "marlie-monserez", "cl…
#> $ uniform_number_display <chr> "18", "33", "21", "1", "19", "46", …
#> $ overall_rank <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, …
#> $ overall_rank_change <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ total_au_points <dbl> 282, 272, 257, 244, 230, 220, 171, …
#> $ percent_change <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ position_change <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ updated_flg <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, …
#> $ tie_flg <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, …
#> $ missed_games_flg <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, …
#> $ previous_seqno <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ has_game_experience <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
Play-by-Play
Use load_aupvb_pbp
to access Athletes Unlimited Pro
Volleyball (AUPV) play-by-play data.
load_aupvb_pbp <- load_aupvb_pbp(2024)
glimpse(load_aupvb_pbp)
#> Rows: 30,507
#> Columns: 41
#> $ season <dbl> 2024, 2024, 2024, 2024, 2024, 2024, 2024, 2024…
#> $ week_number <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1…
#> $ game_number <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1…
#> $ play_sequence_number <dbl> -1, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,…
#> $ set_number <dbl> 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1…
#> $ rally_number <dbl> 0, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4…
#> $ play_code <chr> "START", "Serve", "Reception", "Set", "Attack"…
#> $ narrative_formatted <chr> "START", "[Team Valentin- Anderson] Serve by N…
#> $ player_id <dbl> -1, 261, 277, 1025, 986, 261, 116, 996, 986, 2…
#> $ serve_ace <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ serve_error <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ serve_continue <lgl> FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE…
#> $ attack_kill <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ attack_error <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ attack_continue <lgl> FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, FALSE…
#> $ pass_good <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ pass_error <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ pass_continue <lgl> FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE…
#> $ dig_success <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE…
#> $ dig_continue <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ block_stuff <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ block_assist <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ block_continue <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ set_assist <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE…
#> $ set_error <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ set_continue <lgl> FALSE, FALSE, FALSE, TRUE, FALSE, FALSE, FALSE…
#> $ home_team_score <dbl> 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3…
#> $ away_team_score <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0…
#> $ scoring_team_id <dbl> NA, 499, 499, 499, 499, 499, 499, 499, 499, 49…
#> $ home_team_id <dbl> 499, 499, 499, 499, 499, 499, 499, 499, 499, 4…
#> $ away_team_id <dbl> 500, 500, 500, 500, 500, 500, 500, 500, 500, 5…
#> $ set_status_lk <chr> "NOT STARTED", "COMPLETED", "COMPLETED", "COMP…
#> $ season_id <dbl> 205, 205, 205, 205, 205, 205, 205, 205, 205, 2…
#> $ game_id <dbl> 640, 640, 640, 640, 640, 640, 640, 640, 640, 6…
#> $ play_text <chr> "Start of Game", "Play 1 - 261 - Serve - Conti…
#> $ start_time <dbl> 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,…
#> $ end_time <dbl> 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,…
#> $ video_minutes <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ video_seconds <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ alternate_video_seconds <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ date_time_file_received <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
Use load_lovb_pbp
to access League One Volleyball Pro
(LOVB) play-by-play data.
load_lovb_pbp <- load_lovb_pbp(2025)
glimpse(load_lovb_pbp)
#> Rows: 73,416
#> Columns: 14
#> $ match_id <dbl> 2161068, 2161068, 2161068, 2161068, 2161068, 2161068, 2…
#> $ season <dbl> 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2…
#> $ match_datetime <dttm> 2025-01-09 00:30:00, 2025-01-09 00:30:00, 2025-01-09 0…
#> $ home_team_name <chr> "LOVB Atlanta", "LOVB Atlanta", "LOVB Atlanta", "LOVB A…
#> $ away_team_name <chr> "LOVB Salt Lake", "LOVB Salt Lake", "LOVB Salt Lake", "…
#> $ team_involved <chr> "home", "away", "away", "away", "home", "home", "away",…
#> $ jersey_number <dbl> 10, 17, 1, 11, 23, 77, 12, 10, 12, 1, 12, 1, 16, 10, 15…
#> $ action <chr> "S", "R", "E", "A", "D", "E", "A", "S", "R", "E", "A", …
#> $ outcome <chr> "-", "#", "+", "-", "#", "/", "=", "-", "+", "#", "#", …
#> $ set <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1…
#> $ point_number <dbl> 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4…
#> $ point_winner <chr> "home", "home", "home", "home", "home", "home", "home",…
#> $ home_score <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2…
#> $ away_score <dbl> 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2…
Officials
Use load_lovb_officials
to access League One Volleyball
Pro (LOVB) officials data.
load_lovb_officials <- load_lovb_officials(2025)
glimpse(load_lovb_officials)
#> Rows: 141
#> Columns: 8
#> $ match_id <dbl> 2161068, 2161068, 2161068, 2161068, 2161068, 2161068, 2…
#> $ season <dbl> 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2…
#> $ match_datetime <dttm> 2025-01-09 00:30:00, 2025-01-09 00:30:00, 2025-01-09 0…
#> $ officials_type <chr> "supervisor", "referee1", "referee2", "refereeChallenge…
#> $ full_name <chr> "MICHELLE PRATER", "PATI ROFF", "SAMARA SEVOR", "MARK P…
#> $ first_name <chr> "MICHELLE", "PATI", "SAMARA", "MARK", "APRIL", "ALAINA"…
#> $ last_name <chr> "PRATER", "ROFF", "SEVOR", "PRATER", "MIFFLIN", "SMITH …
#> $ level <chr> "AAA", "AAA", "AAA", "AAA", "AAA", "AAA", "AAA", "AAA",…
Player Boxscores
Use load_lovb_player_boxscore
to access League One
Volleyball Pro (LOVB) player boxscores.
load_lovb_player_boxscore <- load_lovb_player_boxscore(2025)
glimpse(load_lovb_player_boxscore)
#> Rows: 1,846
#> Columns: 28
#> $ match_id <dbl> 2161068, 2161068, 2161068, 2161068, 2161068, 2…
#> $ season <dbl> 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025…
#> $ match_datetime <dttm> 2025-01-09 00:30:00, 2025-01-09 00:30:00, 202…
#> $ player_id <dbl> 2344566, 2344565, 2344568, 2344571, 2344564, 2…
#> $ player_name <chr> "Piyanut Pannoy", "Marta Bechis", "Jessica Riv…
#> $ first_name <chr> "Piyanut", "Marta", "Jessica", "Kayla", "Iga",…
#> $ last_name <chr> "Pannoy", "Bechis", "Rivero Marin", "Haneline"…
#> $ jersey_number <dbl> 2, 3, 4, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,…
#> $ primary_position <dbl> 1, 5, 2, 4, 4, 5, 4, 5, 2, 4, 4, 1, 3, 3, 2, 2…
#> $ roster_status <chr> "active", "active", "active", "active", "activ…
#> $ is_foreign <lgl> TRUE, TRUE, TRUE, FALSE, TRUE, FALSE, FALSE, F…
#> $ is_confederation <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ is_captain <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ is_libero <lgl> FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALS…
#> $ set_1_is_starter <lgl> FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, FALSE,…
#> $ set_1_starting_position <dbl> NA, NA, NA, NA, 6, 1, NA, NA, NA, NA, 3, NA, N…
#> $ set_2_is_starter <lgl> FALSE, FALSE, FALSE, TRUE, FALSE, TRUE, FALSE,…
#> $ set_2_starting_position <dbl> NA, NA, NA, 2, NA, 6, NA, NA, NA, NA, 5, NA, N…
#> $ set_3_is_starter <lgl> FALSE, FALSE, FALSE, TRUE, FALSE, TRUE, FALSE,…
#> $ set_3_starting_position <dbl> NA, NA, NA, 2, NA, 6, NA, NA, NA, NA, 5, NA, N…
#> $ set_4_is_starter <lgl> FALSE, FALSE, FALSE, TRUE, FALSE, TRUE, FALSE,…
#> $ set_4_starting_position <dbl> NA, NA, NA, 2, NA, 6, NA, NA, 4, 5, NA, NA, NA…
#> $ set_5_is_starter <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ set_5_starting_position <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ team_name <chr> "LOVB Atlanta", "LOVB Atlanta", "LOVB Atlanta"…
#> $ team_short_name <chr> "ATL", "ATL", "ATL", "ATL", "ATL", "ATL", "ATL…
#> $ team_code <chr> "ATL", "ATL", "ATL", "ATL", "ATL", "ATL", "ATL…
#> $ team_color <chr> "sapphire", "sapphire", "sapphire", "sapphire"…
Team Staff
Use load_lovb_team_staff
to access League One Volleyball
Pro (LOVB) team staff data.
load_lovb_team_staff <- load_lovb_team_staff(2025)
glimpse(load_lovb_team_staff)
#> Rows: 242
#> Columns: 8
#> $ match_id <dbl> 2161068, 2161068, 2161068, 2161068, 2161068, 2161068, 2…
#> $ season <dbl> 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2025, 2…
#> $ match_datetime <dttm> 2025-01-09 00:30:00, 2025-01-09 00:30:00, 2025-01-09 0…
#> $ team_name <chr> "LOVB Atlanta", "LOVB Atlanta", "LOVB Atlanta", "LOVB S…
#> $ staff_type <chr> "coach", "assistant", "assistant", "coach", "assistant"…
#> $ full_name <chr> "Paulo Coco", "Yoko Zetterlund", "Angela Gonzalez", "Ta…
#> $ first_name <chr> "Paulo", "Yoko", "Angela", "Tama", "Bruno", "Kolin", "M…
#> $ last_name <chr> "Coco", "Zetterlund", "Gonzalez", "Miyashiro", "Chateau…
Events Log
Use load_lovb_events_log
to access League One Volleyball
Pro (LOVB) events log data.
load_lovb_events_log <- load_lovb_events_log(2025)
glimpse(load_lovb_events_log)
#> Rows: 19,348
#> Columns: 49
#> $ match_id <dbl> 2161068, 2161068, 2161068, 2161068, 21…
#> $ season <dbl> 2025, 2025, 2025, 2025, 2025, 2025, 20…
#> $ match_datetime <dttm> 2025-01-09 00:30:00, 2025-01-09 00:30…
#> $ set <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ set_start_time <dttm> 2025-01-09 00:30:00, 2025-01-09 00:30…
#> $ set_end_time <dttm> 2025-01-09 01:00:00, 2025-01-09 01:00…
#> $ set_duration <dbl> 29, 29, 29, 29, 29, 29, 29, 29, 29, 29…
#> $ set_final_home_score <dbl> 22, 22, 22, 22, 22, 22, 22, 22, 22, 22…
#> $ set_final_away_score <dbl> 25, 25, 25, 25, 25, 25, 25, 25, 25, 25…
#> $ event_type <chr> "libero", "libero", "rally", "rally", …
#> $ event_time <dttm> 2025-01-09 00:31:55, 2025-01-09 00:32…
#> $ libero_enters <lgl> TRUE, TRUE, NA, NA, NA, NA, NA, FALSE,…
#> $ team_involved <chr> "away", "home", NA, NA, NA, NA, NA, "h…
#> $ libero_jersey_number <dbl> 16, 16, NA, NA, NA, NA, NA, 16, NA, 16…
#> $ libero_substitute_jersey_number <dbl> 6, 9, NA, NA, NA, NA, NA, 9, NA, 6, 15…
#> $ rally_start_time <dttm> NA, NA, 2025-01-09 00:33:57, 2025-01-…
#> $ rally_end_time <dttm> NA, NA, 2025-01-09 00:34:09, 2025-01-…
#> $ rally_point_winner <chr> NA, NA, "home", "away", "home", "away"…
#> $ substitute_in_jersey_number <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ substitute_out_jersey_number <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ challenge_approved <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ challenge_reason <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ challenge_method <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ challenge_response <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ challenge_at_home_score <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ challenge_at_away_score <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ challenge_score_change <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ serving_team <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ current_home_score <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ current_away_score <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ home_team_p1 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ home_team_p2 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ home_team_p3 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ home_team_p4 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ home_team_p5 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ home_team_p6 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ away_team_p1 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ away_team_p2 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ away_team_p3 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ away_team_p4 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ away_team_p5 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ away_team_p6 <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ verified_time <dttm> NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ verified_method <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ sanction_type <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ sanction_remark <lgl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ staff_first_name <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ staff_last_name <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…
#> $ staff_type <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…