Load calculated 4th down probabilities from nflfastR data.

load_4th_pbp(seasons, fast = FALSE)

Arguments

seasons

Seasons to load. Must be 2014 and later.

fast

Defaults to FALSE. If TRUE, loads pre-computed decisions from repository

Value

nflfastR data on 4th downs with the add_4th_probs() columns added and also the following:

go

100 if a team went for it on 4th down, 0 otherwise. It's 100 and 0 as a convenience for obtaining percent of times going for it.

Examples

# \donttest{
probs <- load_4th_pbp(2019:2020)
#> Loading season 2019
#> Computing probabilities for 3964 plays. . .
#> Loading season 2020
#> Computing probabilities for 3747 plays. . .

dplyr::glimpse(probs)
#> Rows: 96,548
#> Columns: 383
#> $ play_id                              <dbl> 1, 36, 51, 79, 100, 121, 148, 185…
#> $ game_id                              <chr> "2019_01_ATL_MIN", "2019_01_ATL_M…
#> $ old_game_id                          <chr> "2019090804", "2019090804", "2019…
#> $ home_team                            <chr> "MIN", "MIN", "MIN", "MIN", "MIN"…
#> $ away_team                            <chr> "ATL", "ATL", "ATL", "ATL", "ATL"…
#> $ season_type                          <chr> "REG", "REG", "REG", "REG", "REG"…
#> $ week                                 <int> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
#> $ posteam                              <chr> NA, "ATL", "ATL", "ATL", "ATL", "…
#> $ posteam_type                         <chr> NA, "away", "away", "away", "away…
#> $ defteam                              <chr> NA, "MIN", "MIN", "MIN", "MIN", "…
#> $ side_of_field                        <chr> NA, "MIN", "ATL", "ATL", "ATL", "…
#> $ yardline_100                         <dbl> NA, 35, 75, 83, 79, 67, 21, 31, 2…
#> $ game_date                            <chr> "2019-09-08", "2019-09-08", "2019…
#> $ quarter_seconds_remaining            <dbl> 900, 900, 900, 860, 821, 779, 773…
#> $ half_seconds_remaining               <dbl> 1800, 1800, 1800, 1760, 1721, 167…
#> $ game_seconds_remaining               <dbl> 3600, 3600, 3600, 3560, 3521, 347…
#> $ game_half                            <chr> "Half1", "Half1", "Half1", "Half1…
#> $ quarter_end                          <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ drive                                <dbl> NA, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3,…
#> $ sp                                   <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, …
#> $ qtr                                  <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …
#> $ down                                 <dbl> NA, NA, 1, 2, 3, 4, 1, 1, 2, NA, …
#> $ goal_to_go                           <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ time                                 <chr> "15:00", "15:00", "15:00", "14:20…
#> $ yrdln                                <chr> "MIN 35", "MIN 35", "ATL 25", "AT…
#> $ ydstogo                              <dbl> 0, 0, 10, 18, 14, 2, 10, 20, 12, …
#> $ ydsnet                               <dbl> NA, 8, 8, 8, 8, 8, 21, 21, 21, 21…
#> $ desc                                 <chr> "GAME", "5-D.Bailey kicks 65 yard…
#> $ play_type                            <chr> NA, "kickoff", "pass", "run", "ru…
#> $ yards_gained                         <dbl> NA, 0, -8, 4, 12, 0, 0, 8, 23, 0,…
#> $ shotgun                              <dbl> 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, …
#> $ no_huddle                            <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ qb_dropback                          <dbl> NA, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0,…
#> $ qb_kneel                             <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ qb_spike                             <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ qb_scramble                          <dbl> 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, …
#> $ pass_length                          <chr> NA, NA, NA, NA, NA, NA, NA, "shor…
#> $ pass_location                        <chr> NA, NA, NA, NA, NA, NA, NA, "left…
#> $ air_yards                            <dbl> NA, NA, NA, NA, NA, NA, NA, 1, 11…
#> $ yards_after_catch                    <dbl> NA, NA, NA, NA, NA, NA, NA, 7, 12…
#> $ run_location                         <chr> NA, NA, NA, "right", "left", NA, …
#> $ run_gap                              <chr> NA, NA, NA, "tackle", "end", NA, …
#> $ field_goal_result                    <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ kick_distance                        <dbl> NA, NA, NA, NA, NA, 0, NA, NA, NA…
#> $ extra_point_result                   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ two_point_conv_result                <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ home_timeouts_remaining              <dbl> 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, …
#> $ away_timeouts_remaining              <dbl> 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, …
#> $ timeout                              <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ timeout_team                         <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ td_team                              <chr> NA, NA, NA, NA, NA, NA, NA, NA, "…
#> $ td_player_name                       <chr> NA, NA, NA, NA, NA, NA, NA, NA, "…
#> $ td_player_id                         <chr> NA, NA, NA, NA, NA, NA, NA, NA, "…
#> $ posteam_timeouts_remaining           <dbl> NA, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,…
#> $ defteam_timeouts_remaining           <dbl> NA, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,…
#> $ total_home_score                     <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 6, 7, 7, …
#> $ total_away_score                     <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ posteam_score                        <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,…
#> $ defteam_score                        <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,…
#> $ score_differential                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 6, -7…
#> $ posteam_score_post                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 6, 7, 0,…
#> $ defteam_score_post                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,…
#> $ score_differential_post              <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 6, 7, -7…
#> $ no_score_prob                        <dbl> 0.000000000, 0.003473236, 0.00347…
#> $ opp_fg_prob                          <dbl> 0.00000000, 0.12887876, 0.1288787…
#> $ opp_safety_prob                      <dbl> 0.0000000000, 0.0022700427, 0.002…
#> $ opp_td_prob                          <dbl> 0.00000000, 0.27208826, 0.2720882…
#> $ fg_prob                              <dbl> 0.0000000, 0.2081953, 0.2081953, …
#> $ safety_prob                          <dbl> 0.0000000000, 0.0032402445, 0.003…
#> $ td_prob                              <dbl> 0.0000000, 0.3818542, 0.3818542, …
#> $ extra_point_prob                     <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ two_point_conversion_prob            <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ ep                                   <dbl> NA, 1.0082518, 1.0082518, -0.6505…
#> $ epa                                  <dbl> NA, 0.00000000, -1.65876345, -0.5…
#> $ total_home_epa                       <dbl> 0.000000, 0.000000, 1.658763, 2.1…
#> $ total_away_epa                       <dbl> 0.000000, 0.000000, -1.658763, -2…
#> $ total_home_rush_epa                  <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_away_rush_epa                  <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_home_pass_epa                  <dbl> 0.000000, 0.000000, 1.658763, 1.6…
#> $ total_away_pass_epa                  <dbl> 0.000000, 0.000000, -1.658763, -1…
#> $ air_epa                              <dbl> NA, NA, NA, NA, NA, NA, NA, -0.55…
#> $ yac_epa                              <dbl> NA, NA, NA, NA, NA, NA, NA, 0.811…
#> $ comp_air_epa                         <dbl> NA, 0.0000000, 0.0000000, 0.00000…
#> $ comp_yac_epa                         <dbl> NA, 0.0000000, 0.0000000, 0.00000…
#> $ total_home_comp_air_epa              <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_away_comp_air_epa              <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_home_comp_yac_epa              <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_away_comp_yac_epa              <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_home_raw_air_epa               <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_away_raw_air_epa               <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_home_raw_yac_epa               <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ total_away_raw_yac_epa               <dbl> 0.0000000, 0.0000000, 0.0000000, …
#> $ wp                                   <dbl> 0.4332080, 0.4332080, 0.4332080, …
#> $ def_wp                               <dbl> 0.5667920, 0.5667920, 0.5667920, …
#> $ home_wp                              <dbl> 0.5667920, 0.5667920, 0.5667920, …
#> $ away_wp                              <dbl> 0.4332080, 0.4332080, 0.4332080, …
#> $ wpa                                  <dbl> 0.0000000000, 0.0000000000, -0.03…
#> $ vegas_wpa                            <dbl> 0.0000000000, 0.0000000000, -0.04…
#> $ vegas_home_wpa                       <dbl> 0.0000000000, 0.0000000000, 0.049…
#> $ home_wp_post                         <dbl> NA, 0.5667920, 0.6018074, 0.62024…
#> $ away_wp_post                         <dbl> NA, 0.4332080, 0.3981926, 0.37975…
#> $ vegas_wp                             <dbl> 0.36757040, 0.36757040, 0.3675704…
#> $ vegas_home_wp                        <dbl> 0.6324296, 0.6324296, 0.6324296, …
#> $ total_home_rush_wpa                  <dbl> 0.0000000000, 0.0000000000, 0.000…
#> $ total_away_rush_wpa                  <dbl> 0.0000000000, 0.0000000000, 0.000…
#> $ total_home_pass_wpa                  <dbl> 0.00000000, 0.00000000, 0.0350153…
#> $ total_away_pass_wpa                  <dbl> 0.00000000, 0.00000000, -0.035015…
#> $ air_wpa                              <dbl> NA, NA, NA, NA, NA, NA, NA, 0.000…
#> $ yac_wpa                              <dbl> NA, NA, NA, NA, NA, NA, NA, 0.006…
#> $ comp_air_wpa                         <dbl> NA, 0.0000000000, 0.0000000000, 0…
#> $ comp_yac_wpa                         <dbl> NA, 0.0000000000, 0.0000000000, 0…
#> $ total_home_comp_air_wpa              <dbl> 0.0000000000, 0.0000000000, 0.000…
#> $ total_away_comp_air_wpa              <dbl> 0.0000000000, 0.0000000000, 0.000…
#> $ total_home_comp_yac_wpa              <dbl> 0.000000000, 0.000000000, 0.00000…
#> $ total_away_comp_yac_wpa              <dbl> 0.000000000, 0.000000000, 0.00000…
#> $ total_home_raw_air_wpa               <dbl> 0.0000000000, 0.0000000000, 0.000…
#> $ total_away_raw_air_wpa               <dbl> 0.0000000000, 0.0000000000, 0.000…
#> $ total_home_raw_yac_wpa               <dbl> 0.000000000, 0.000000000, 0.00000…
#> $ total_away_raw_yac_wpa               <dbl> 0.000000000, 0.000000000, 0.00000…
#> $ punt_blocked                         <dbl> NA, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,…
#> $ first_down_rush                      <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ first_down_pass                      <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,…
#> $ first_down_penalty                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ third_down_converted                 <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ third_down_failed                    <dbl> NA, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0,…
#> $ fourth_down_converted                <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ fourth_down_failed                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ incomplete_pass                      <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ touchback                            <dbl> 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ interception                         <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ punt_inside_twenty                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ punt_in_endzone                      <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ punt_out_of_bounds                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ punt_downed                          <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ punt_fair_catch                      <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ kickoff_inside_twenty                <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,…
#> $ kickoff_in_endzone                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,…
#> $ kickoff_out_of_bounds                <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ kickoff_downed                       <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ kickoff_fair_catch                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ fumble_forced                        <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ fumble_not_forced                    <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ fumble_out_of_bounds                 <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ solo_tackle                          <dbl> NA, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1,…
#> $ safety                               <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ penalty                              <dbl> NA, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0,…
#> $ tackled_for_loss                     <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ fumble_lost                          <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ own_kickoff_recovery                 <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ own_kickoff_recovery_td              <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ qb_hit                               <dbl> NA, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0,…
#> $ rush_attempt                         <dbl> NA, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0,…
#> $ pass_attempt                         <dbl> NA, 0, 1, 0, 0, 0, 0, 1, 1, 0, 0,…
#> $ sack                                 <dbl> NA, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ touchdown                            <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,…
#> $ pass_touchdown                       <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,…
#> $ rush_touchdown                       <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ return_touchdown                     <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ extra_point_attempt                  <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,…
#> $ two_point_attempt                    <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ field_goal_attempt                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ kickoff_attempt                      <dbl> NA, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1,…
#> $ punt_attempt                         <dbl> NA, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,…
#> $ fumble                               <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ complete_pass                        <dbl> NA, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0,…
#> $ assist_tackle                        <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ lateral_reception                    <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ lateral_rush                         <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ lateral_return                       <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ lateral_recovery                     <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ passer_player_id                     <chr> NA, NA, "00-0026143", NA, NA, NA,…
#> $ passer_player_name                   <chr> NA, NA, "M.Ryan", NA, NA, NA, NA,…
#> $ passing_yards                        <dbl> NA, NA, NA, NA, NA, NA, NA, 8, 23…
#> $ receiver_player_id                   <chr> NA, NA, NA, NA, NA, NA, NA, "00-0…
#> $ receiver_player_name                 <chr> NA, NA, NA, NA, NA, NA, NA, "D.Co…
#> $ receiving_yards                      <dbl> NA, NA, NA, NA, NA, NA, NA, 8, 23…
#> $ rusher_player_id                     <chr> NA, NA, NA, "00-0031285", "00-002…
#> $ rusher_player_name                   <chr> NA, NA, NA, "D.Freeman", "M.Ryan"…
#> $ rushing_yards                        <dbl> NA, NA, NA, 4, 12, NA, NA, NA, NA…
#> $ lateral_receiver_player_id           <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_receiver_player_name         <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_receiving_yards              <dbl> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_rusher_player_id             <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_rusher_player_name           <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_rushing_yards                <dbl> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_sack_player_id               <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_sack_player_name             <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ interception_player_id               <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ interception_player_name             <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_interception_player_id       <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_interception_player_name     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ punt_returner_player_id              <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ punt_returner_player_name            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_punt_returner_player_id      <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_punt_returner_player_name    <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ kickoff_returner_player_name         <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ kickoff_returner_player_id           <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_kickoff_returner_player_id   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ lateral_kickoff_returner_player_name <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ punter_player_id                     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ punter_player_name                   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ kicker_player_name                   <chr> NA, "D.Bailey", NA, NA, NA, NA, N…
#> $ kicker_player_id                     <chr> NA, "00-0028660", NA, NA, NA, NA,…
#> $ own_kickoff_recovery_player_id       <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ own_kickoff_recovery_player_name     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ blocked_player_id                    <chr> NA, NA, NA, NA, NA, "00-0033336",…
#> $ blocked_player_name                  <chr> NA, NA, NA, NA, NA, "E.Wilson", N…
#> $ tackle_for_loss_1_player_id          <chr> NA, NA, "00-0031256", NA, NA, NA,…
#> $ tackle_for_loss_1_player_name        <chr> NA, NA, "A.Barr", NA, NA, NA, NA,…
#> $ tackle_for_loss_2_player_id          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ tackle_for_loss_2_player_name        <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ qb_hit_1_player_id                   <chr> NA, NA, "00-0031256", NA, NA, NA,…
#> $ qb_hit_1_player_name                 <chr> NA, NA, "A.Barr", NA, NA, NA, NA,…
#> $ qb_hit_2_player_id                   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ qb_hit_2_player_name                 <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ forced_fumble_player_1_team          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ forced_fumble_player_1_player_id     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ forced_fumble_player_1_player_name   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ forced_fumble_player_2_team          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ forced_fumble_player_2_player_id     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ forced_fumble_player_2_player_name   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ solo_tackle_1_team                   <chr> NA, NA, "MIN", "MIN", "MIN", "ATL…
#> $ solo_tackle_2_team                   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ solo_tackle_1_player_id              <chr> NA, NA, "00-0031256", "00-0031242…
#> $ solo_tackle_2_player_id              <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ solo_tackle_1_player_name            <chr> NA, NA, "A.Barr", "S.Stephen", "A…
#> $ solo_tackle_2_player_name            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_1_player_id            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_1_player_name          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_1_team                 <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_2_player_id            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_2_player_name          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_2_team                 <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_3_player_id            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_3_player_name          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_3_team                 <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_4_player_id            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_4_player_name          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ assist_tackle_4_team                 <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ tackle_with_assist                   <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ tackle_with_assist_1_player_id       <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ tackle_with_assist_1_player_name     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ tackle_with_assist_1_team            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ tackle_with_assist_2_player_id       <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ tackle_with_assist_2_player_name     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ tackle_with_assist_2_team            <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ pass_defense_1_player_id             <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ pass_defense_1_player_name           <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ pass_defense_2_player_id             <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ pass_defense_2_player_name           <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumbled_1_team                       <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumbled_1_player_id                  <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumbled_1_player_name                <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumbled_2_player_id                  <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumbled_2_player_name                <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumbled_2_team                       <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_1_team               <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_1_yards              <dbl> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_1_player_id          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_1_player_name        <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_2_team               <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_2_yards              <dbl> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_2_player_id          <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ fumble_recovery_2_player_name        <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ sack_player_id                       <chr> NA, NA, "00-0031256", NA, NA, NA,…
#> $ sack_player_name                     <chr> NA, NA, "A.Barr", NA, NA, NA, NA,…
#> $ half_sack_1_player_id                <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ half_sack_1_player_name              <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ half_sack_2_player_id                <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ half_sack_2_player_name              <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ return_team                          <chr> NA, "ATL", NA, NA, NA, NA, NA, NA…
#> $ return_yards                         <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18…
#> $ penalty_team                         <chr> NA, NA, NA, NA, NA, NA, "MIN", NA…
#> $ penalty_player_id                    <chr> NA, NA, NA, NA, NA, NA, "00-00279…
#> $ penalty_player_name                  <chr> NA, NA, NA, NA, NA, NA, "K.Rudolp…
#> $ penalty_yards                        <dbl> NA, NA, NA, NA, NA, NA, 10, NA, N…
#> $ replay_or_challenge                  <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ replay_or_challenge_result           <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ penalty_type                         <chr> NA, NA, NA, NA, NA, NA, "Offensiv…
#> $ defensive_two_point_attempt          <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ defensive_two_point_conv             <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ defensive_extra_point_attempt        <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ defensive_extra_point_conv           <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ safety_player_name                   <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ safety_player_id                     <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ season                               <int> 2019, 2019, 2019, 2019, 2019, 201…
#> $ cp                                   <dbl> NA, NA, NA, NA, NA, NA, NA, 0.844…
#> $ cpoe                                 <dbl> NA, NA, NA, NA, NA, NA, NA, 15.57…
#> $ series                               <dbl> 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, …
#> $ series_success                       <dbl> 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, …
#> $ series_result                        <chr> "Punt", "Punt", "Punt", "Punt", "…
#> $ order_sequence                       <dbl> 1, 36, 51, 79, 100, 121, 148, 185…
#> $ start_time                           <chr> "13:00:00", "13:00:00", "13:00:00…
#> $ time_of_day                          <chr> NA, "17:04:02", "17:04:42", "17:0…
#> $ stadium                              <chr> "U.S. Bank Stadium", "U.S. Bank S…
#> $ weather                              <chr> "N/A (Indoors) Temp: ° F, Wind:  …
#> $ nfl_api_id                           <chr> "10160000-0579-055e-7350-c0a2552a…
#> $ play_clock                           <chr> "0", "10", "12", "5", "7", "17", …
#> $ play_deleted                         <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ play_type_nfl                        <chr> "GAME_START", "KICK_OFF", "SACK",…
#> $ special_teams_play                   <dbl> 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, …
#> $ st_play_type                         <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ end_clock_time                       <chr> NA, NA, NA, NA, NA, "12:53", NA, …
#> $ end_yard_line                        <chr> NA, "ATL 25", "ATL 17", "ATL 21",…
#> $ fixed_drive                          <dbl> 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 3, …
#> $ fixed_drive_result                   <chr> "Punt", "Punt", "Punt", "Punt", "…
#> $ drive_real_start_time                <chr> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ drive_play_count                     <dbl> NA, 3, 3, 3, 3, 3, 2, 2, 2, 2, 3,…
#> $ drive_time_of_possession             <chr> NA, "2:07", "2:07", "2:07", "2:07…
#> $ drive_first_downs                    <dbl> NA, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1,…
#> $ drive_inside20                       <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,…
#> $ drive_ended_with_score               <dbl> NA, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0,…
#> $ drive_quarter_start                  <dbl> NA, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ drive_quarter_end                    <dbl> NA, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,…
#> $ drive_yards_penalized                <dbl> NA, 0, 0, 0, 0, 0, -10, -10, -10,…
#> $ drive_start_transition               <chr> NA, "KICKOFF", "KICKOFF", "KICKOF…
#> $ drive_end_transition                 <chr> NA, "BLOCKED_PUNT", "BLOCKED_PUNT…
#> $ drive_game_clock_start               <chr> NA, "15:00", "15:00", "15:00", "1…
#> $ drive_game_clock_end                 <chr> NA, "12:53", "12:53", "12:53", "1…
#> $ drive_start_yard_line                <chr> NA, "ATL 25", "ATL 25", "ATL 25",…
#> $ drive_end_yard_line                  <chr> NA, "ATL 33", "ATL 33", "ATL 33",…
#> $ drive_play_id_started                <dbl> NA, 36, 36, 36, 36, 36, 148, 148,…
#> $ drive_play_id_ended                  <dbl> NA, 121, 121, 121, 121, 121, 239,…
#> $ away_score                           <int> 12, 12, 12, 12, 12, 12, 12, 12, 1…
#> $ home_score                           <int> 28, 28, 28, 28, 28, 28, 28, 28, 2…
#> $ location                             <chr> "Home", "Home", "Home", "Home", "…
#> $ result                               <int> 16, 16, 16, 16, 16, 16, 16, 16, 1…
#> $ total                                <int> 40, 40, 40, 40, 40, 40, 40, 40, 4…
#> $ spread_line                          <dbl> 3.5, 3.5, 3.5, 3.5, 3.5, 3.5, 3.5…
#> $ total_line                           <dbl> 47, 47, 47, 47, 47, 47, 47, 47, 4…
#> $ div_game                             <int> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ roof                                 <chr> "dome", "dome", "dome", "dome", "…
#> $ surface                              <chr> "sportturf", "sportturf", "sportt…
#> $ temp                                 <int> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ wind                                 <int> NA, NA, NA, NA, NA, NA, NA, NA, N…
#> $ home_coach                           <chr> "Mike Zimmer", "Mike Zimmer", "Mi…
#> $ away_coach                           <chr> "Dan Quinn", "Dan Quinn", "Dan Qu…
#> $ stadium_id                           <chr> "MIN01", "MIN01", "MIN01", "MIN01…
#> $ game_stadium                         <chr> "U.S. Bank Stadium", "U.S. Bank S…
#> $ aborted_play                         <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ success                              <dbl> NA, 0, 0, 0, 1, 0, 0, 1, 1, 1, 0,…
#> $ passer                               <chr> NA, NA, "M.Ryan", NA, "M.Ryan", N…
#> $ passer_jersey_number                 <int> NA, NA, 2, NA, 2, NA, NA, 8, 8, N…
#> $ rusher                               <chr> NA, NA, NA, "D.Freeman", NA, NA, …
#> $ rusher_jersey_number                 <int> NA, NA, NA, 24, 2, NA, 33, NA, NA…
#> $ receiver                             <chr> NA, NA, NA, NA, NA, NA, NA, "D.Co…
#> $ receiver_jersey_number               <int> NA, NA, NA, NA, NA, NA, NA, 33, 1…
#> $ pass                                 <dbl> 0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, …
#> $ rush                                 <dbl> 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, …
#> $ first_down                           <dbl> NA, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,…
#> $ special                              <dbl> 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, …
#> $ play                                 <dbl> 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, …
#> $ passer_id                            <chr> NA, NA, "00-0026143", NA, "00-002…
#> $ rusher_id                            <chr> NA, NA, NA, "00-0031285", NA, NA,…
#> $ receiver_id                          <chr> NA, NA, NA, NA, NA, NA, NA, "00-0…
#> $ name                                 <chr> NA, NA, "M.Ryan", "D.Freeman", "M…
#> $ jersey_number                        <int> NA, NA, 2, 24, 2, NA, 33, 8, 8, N…
#> $ id                                   <chr> NA, NA, "00-0026143", "00-0031285…
#> $ fantasy_player_name                  <chr> NA, NA, NA, "D.Freeman", "M.Ryan"…
#> $ fantasy_player_id                    <chr> NA, NA, NA, "00-0031285", "00-002…
#> $ fantasy                              <chr> NA, NA, NA, "D.Freeman", "M.Ryan"…
#> $ fantasy_id                           <chr> NA, NA, NA, "00-0031285", "00-002…
#> $ out_of_bounds                        <dbl> 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, …
#> $ home_opening_kickoff                 <dbl> 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, …
#> $ qb_epa                               <dbl> NA, 0.00000000, -1.65876345, -0.5…
#> $ xyac_epa                             <dbl> NA, NA, NA, NA, NA, NA, NA, 0.747…
#> $ xyac_mean_yardage                    <dbl> NA, NA, NA, NA, NA, NA, NA, 6.732…
#> $ xyac_median_yardage                  <int> NA, NA, NA, NA, NA, NA, NA, 6, 0,…
#> $ xyac_success                         <dbl> NA, NA, NA, NA, NA, NA, NA, 0.505…
#> $ xyac_fd                              <dbl> NA, NA, NA, NA, NA, NA, NA, 0.053…
#> $ xpass                                <dbl> NA, NA, 0.4867992, 0.6399938, 0.9…
#> $ pass_oe                              <dbl> NA, NA, 51.320082, -63.999379, 6.…
#> $ go_boost                             <dbl> NA, NA, NA, NA, NA, 2.537943, NA,…
#> $ first_down_prob                      <dbl> NA, NA, NA, NA, NA, 0.5877355, NA…
#> $ wp_fail                              <dbl> NA, NA, NA, NA, NA, 0.2580237, NA…
#> $ wp_succeed                           <dbl> NA, NA, NA, NA, NA, 0.4322288, NA…
#> $ go_wp                                <dbl> NA, NA, NA, NA, NA, 0.3604102, NA…
#> $ fg_make_prob                         <dbl> NA, NA, NA, NA, NA, 0, NA, NA, NA…
#> $ miss_fg_wp                           <dbl> NA, NA, NA, NA, NA, 0.2404602, NA…
#> $ make_fg_wp                           <dbl> NA, NA, NA, NA, NA, 0.3972354, NA…
#> $ fg_wp                                <dbl> NA, NA, NA, NA, NA, 0.2404602, NA…
#> $ punt_wp                              <dbl> NA, NA, NA, NA, NA, 0.3350308, NA…
#> $ go                                   <dbl> 0, 0, 100, 100, 100, 0, 100, 100,…
# \dontshow{
# Close open connections for R CMD Check
future::plan("sequential")
# }
# }