nflreadr::nflverse_data_timezone
which defines the standard timezone
across all nflverse data. When printing to the console, nflreadr will convert timestamps to the user local timezone.clean_team_abbrs()
now converts "PHO"
to "ARI"
. (#260)nflreadr::dictionary_pbp
. (#262)This release covers a number of bugfixes and function improvements:
%c%
internal helper now uses data.table::fifelse()
to avoid falsely converting
dates to integers. (#214)load_schedules()
cleans the roof
variable in order to avoid nflverse model
issues. (#218)join_coalesce()
coerces x/y args to data.frame and will return a data.framemost_recent_season()
now internally computes the exact day of the season
opener as Thursday after first Monday of September. (#221)load_espn_qbr()
no longer supports argument league
which used to allow
loading of College QBR (not in nflverse scope) (#222)stat_mode()
, a re-export from nflfastR, which computes the
statistical mode of a vector. (#224)load_ftn_charting()
now accepts the argument file_type
. (#228)clean_team_abbrs()
now accepts the "team" name "NFL". (#231)load_participation()
now returns additional fields time_to_throw
,
was_pressure
, defense_man_zone_type
, and defense_coverage_type
(#233,
thank you @mistakia @john-b-edwards)clean_player_names()
now can transliterate to latin-ascii if the stringi package
is available, controlled by the convert_to_ascii
argument.Thank you to: @arjunmenon10, @engineerchange, @isaactpetersen, @Jeffery-777, @john-b-edwards, @justlikekevin, @mrcaseb, @SCasanova, and @tanho63 for their questions, feedback, and contributions to this release.
This release addresses bugs, improves some utilities, and adds a few new datasets.
load_player_stats(stat_type = "defense")
added to provide defensive player stats
as computed by nflfastR::calculate_player_stats_def()
(#200) It also comes with
a data dictionary, courtesy of @mpcen (#192)load_ftn_charting()
adds manual charting data for 2022-onwards, graciously
provided by FTN Data. This should automatically be updated when published
by FTN, and the early indication is that it will be within 48 hours after a game
has finished.nflverse_sitrep()
and friends overhauled:
nflreadr::most_recent_season()
and aliases get_latest_season
, get_current_season
etc now use March 15th as the changeover for league year. Hopefully this is not
a moving target 🙃nflreadr::clean_homeaway()
now handles columns with suffixes _home
and _away
nflreadr::nflverse_game_id()
now accepts old team abbreviations and outputs useful errors..for_cran()
to limit parallelization in CRAN examples and testsmake_nflverse_data_class()
now uses data.table::setattr()
to preserve data.table pointer"special"
variable in the play-by-play data dictionary. (#189)Thank you to @ak47twq, @alecglen, @andycancapital, @bullaspc, @mcarman8, @mpcen, @mrcaseb, @tanho63, @tashapiro, and @TheMathNinja for their questions, feedback, and contributions to this release
--
Minor changes per changelist and patch CRAN-related example issue.
.clear_cache()
now re-exported without dot prefix as clear_cache()
. Hopefully more obvious.join_coalesce()
is now added as a utility to join two dataframes and coalesce any shared columns.load_teams()
now uses the argument current
(TRUE/FALSE) to standardize which rows are returned - this aligns with nflreadr::clean_team_abbrs
and nflreadr::team_abbr_mapping
dictionary_participation
added (thank you @josephhero!)clean_homeaway()
now preserves neutral site location as well as input class and input attributesload_ff_rankings()
URL bug corrected (thank you @kharigardner)clean_homeaway()
resolved for CRAN failureThank you to @ak47twq, @bachlaw, @brunomioto, @guga31bb, @Josephhero, @kharigardner, @mrcaseb, @MysteryPollster, @numbersinfigures, and @ohri for their questions, feedback, and contributions towards this release.
Fixes CRAN bug and provides some function improvements, most notably improved logic for load_participation()
's pbp join.
nflverse_game_id()
which computes valid nflverse game identifiers in the format "{season}_{week}_{away}_{home}"
load_participation()
now joins pbp on via nflverse_game_id
instead of old_game_id
load_snap_counts()
now allows download of the 2012 season which was previously hardcoded from 2013 (#128)progressively()
now works with purrr-style lambda functions and no longer checks for progressor class, allowing it to be used more flexibly (and with cli-based progress bars.)nflverse_releases()
and nflverse_download()
now accept .token
arguments which default to gh::gh_token()
. This is mostly to let us test things properly. (#131)clean_player_names()
now fully lives in nflreadr, the squish/trim happens firstget_current_season()
now exists, because we can't agree on what to name things.Thank you to @atungate, @grayhawk40, @guga31bb,@jestarr, @john-b-edwards,@marvin3FF,@mrcaseb, @SCasanova, @shirondru, @tanho63, and @TheMathNinja for their contributions and feedback towards this release!
This release introduces several new data functions, some new utilities, and an array of data/function updates.
load_participation()
returns new play-level information about what players are on the field, how many players are in the box, and what formation the offense is using. Data from NGS starting 2016 and onwardload_contracts()
downloads (historical) player contracts from OverTheCap.comload_players()
returns player-level information and is the new recommended source (over rosters) for IDs, positions, birthdates etc.load_rosters_weekly()
provides week-by-week team rosters dating back to 2002.load_officials()
returns game-level information about which officials are assigned to specific games.nflverse_download()
downloads all files attached to specified/all releases to a local folder. This facilitates something like arrow::open_dataset()
for reading files locally.nflverse_releases()
lists all releases that can be loaded through nflverse_download()
load_from_url()
exposes a new utility function for loading any csv, rds, qs, parquet URL to memory.load_draft_picks()
now has the rest of the career stat fields from PFR*sitrep()
functions now report package-specific options that are set.get_current_week()
helper to get the current nfl season weekload_rosters()
now provides season-level rosters dating back to 1920.dictionary_snap_counts
and dictionary_schedules
with some missing fieldsnflfastR::update_db()
as if it were a tibbleoptions(nflreadr.prefer)
defaults to rds now since qs is no longer a required dependencyclean_player_names()
now also removes commas (after optionally using them for convert_lastfirst
)clean_player_names()
now also removes all caps suffixes.sitrep()
exits nicely if no packages are to be investigated. #114load_from_url
as primaryload_ff_opportunity()
documentation. #117Thank you to @albtree, @john-b-edwards, @mrcaseb, @pranavrajaram, @tanho63, and @tpenney89 for their contributions and feedback on this release!
This release updates all nflverse URLs to use the new nflverse-data repository releases, as well as provides improved pretty-printing methods that tell you when the data was last updated.
This release adds functions and arguments to access new data, along with some backend changes.
load_ff_opportunity()
downloads expected fantasy points data from the ffopportunity packageload_ff_rankings()
gains an "all"
parameter to return all available rankings data (weekly archives since 2019)load_pfr_advstats()
gains a "summary_level"
parameter to return season-level data, which has some fields that are not available at the week-level.options(nflreadr.verbose)
replaces options(nflreadr.cache_warning)
as the best way to silence nflreadr messages.most_recent_season()
functionThank you to @armstjc, @Grayhawk34, @john-b-edwards, @mrcaseb, @pranavrajaram, @rogers1000, and @tanho63 for their contributions and feedback on this release!
nflverse_sitrep()
and ffverse_sitrep()
give a minimal overview of the package dependencies_sitrep()
functions receive a small print-related bugfix and colouring improvement.clean_player_names()
and clean_team_abbrs()
added - these help standardise player names and team abbreviations based on internal dictionaries.load_ff_rankings()
now has a type
argument and can return "draft"
or "week"
rankings from the DynastyProcess/data repo.clean_homeaway()
converts a dataframe of games with columns prefixed with home_
and away_
to a dataframe of teams, renaming to team_
and opponent_
and doubling the rows.load_pfr_advstats()
which provides pass, rush, rec, def additional data for each week.Thank you to @ajreinhard, @brunomioto, @jthomasmock, @mrcaseb, @SCasanova, and @tanho63 for their feedback and contributions to this package!
This release makes some backend changes for speed, reduced dependency footprint, and ease of maintenance.
load_player_stats()
can now retrieve weekly summaries of kicking data by specifying the stat_type
argument to be "kicking"
.load_combine()
retrieves NFL combine data (from PFR).*_from_url()
family of functions and move responsibility to progressively()
function decorator instead. See vignette for details.dplyr
and purrr
in favour of data.table
- this hopefully improves speed and reduces the dependency footprint.rlang::arg_match0
instead of match.arg (uses rlang explicitly instead of implicitly as a dependency of memoise).The goal of {nflreadr
} is to efficiently load data from nflverse GitHub repositories, and features caching, optional progress updates, and data dictionaries.
At this time, it includes data from the following repositories:
This will hopefully provide a unified and reliable package for downloading nflverse data that can be extended to the rest of the nflverse and ffverse package families.
Special thanks to Seb, Ben, John, Lee, and Thomas for their contributions to the package and to the data pipelines that this package relies on 🎉