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 🎉