nhlscraper

36 posts

nhlscraper banner
nhlscraper

nhlscraper

@nhlscraper

CRAN-certified minimum-dependency R package to scrape, clean, and visualize hockey data via the NHL and ESPN APIs; 3500+ downloads

Sumali Kasım 2025
337 Sinusundan88 Mga Tagasunod
nhlscraper nag-retweet
Evan Lawing
Evan Lawing@EDLAnalytics·
Check out my new article, Creating a Playoff Weighted RAPM to Identify Playoff Risers! I created two RAPM models to try to identify players who play better or worse during the playoffs, allowing for more than just the eye test to label players @elawing1018/creating-a-playoff-weighted-rapm-to-identify-playoff-risers-58ff7c65c89b?postPublishedType=initial" target="_blank" rel="nofollow noopener">medium.com/@elawing1018/c…
English
1
6
18
1.6K
nhlscraper
nhlscraper@nhlscraper·
All aggregate loading functions will be unavailable for ~1 day. We are implementing automatic data refreshing for these pre-loaded datasets.
English
0
0
5
324
nhlscraper
nhlscraper@nhlscraper·
Our R package nhlscraper has reached 3,000 downloads on CRAN 🎉 Really grateful to have contributed to making hockey data and analytics more accessible!
nhlscraper tweet media
English
0
2
13
706
nhlscraper
nhlscraper@nhlscraper·
Source is now available via install.packages('nhlscraper', type = 'source'); you will need Rtools on Windows and Xcode command-line tools on Mac for this installation method. Please wait until the binaries are compiled otherwise. Status can be found here: cran.r-project.org/web/packages/n…
English
0
0
4
163
nhlscraper
nhlscraper@nhlscraper·
Version 0.6.0 has now been pushed to CRAN and will be rolling out to all users soon. This is a heavily recommended update for all. Check out the full change-log here: rentosaijo.github.io/nhlscraper/new…
English
2
3
16
1.3K
nhlscraper
nhlscraper@nhlscraper·
The new update on the development version includes gc_pbp_raw()/gc_pbps_raw() and wsc_pbp_raw()/wsc_pbps_raw() to pull uncleaned raw play-by-play data dating back to the inaugural season. Note that there are heavy inconsistencies in raw data as audited in github.com/RentoSaijo/nhl….
English
0
0
3
169
nhlscraper nag-retweet
Evan Lawing
Evan Lawing@EDLAnalytics·
Definitely a further average distance on shootout/penalty shot misses compared to goals. Makes sense as the goalie will look bigger. The goals are pretty much clustered right at the net; the misses have a similar pattern just with more dispersion on the x-axis. Data: @nhlscraper
Evan Lawing tweet media
Tangotiger 🍁@tangotiger

Has someone posted a heat map of where shootout and/or penalty shots are taken from (split between goals and non-goals)?

English
1
1
11
3.8K
nhlscraper nag-retweet
Rento Saijo
Rento Saijo@RentoSaijo·
First real test since my new contract projection model update: Michael Carcone signs a $1.75 x 2 year contract; our model falls within $200K (underestimation)!
Rento Saijo tweet media
English
0
1
13
508
nhlscraper nag-retweet
Rento Saijo
Rento Saijo@RentoSaijo·
Okay, I tidied up some things and found a more interesting one; I wonder, why stop at tertiary assist? But we do need to assess the quality of passes. More to come.
English
2
4
22
7.2K
nhlscraper
nhlscraper@nhlscraper·
wsc_play_by_plays() is now stable for all seasons from 2010-11 to 2025-26 (up until February 1st).
English
0
0
2
134
nhlscraper
nhlscraper@nhlscraper·
calculate_expected_goals() now uses a fixed six-partition ridge xG model instead of legacy versioned models in the development version. Check out below to learn more: rentosaijo.github.io/nhlscraper/art…
English
0
1
3
729
nhlscraper
nhlscraper@nhlscraper·
gc_pbps() and shift_charts() are now stable with updated columns; add_shift_times() is now available on the development version (and it's fast! like really fast). wsc_pbps() is still under development.
English
0
0
1
178
nhlscraper
nhlscraper@nhlscraper·
While these season-aggregate loading functions are still under development, individual games ones like gc_pbp(), wsc_pbp(), and shift_chart() are now finalized in v0.5.0.9000 with the new on-ice columns. You can check out the whole process here: rentosaijo.github.io/nhlscraper/art…
nhlscraper@nhlscraper

Note that gc_pbps(), wsc_pbps(), and shift_charts() are going to be unstable for this coming week as we make some improvements on the quality of columns returned. Also, in the development version, we've implemented C for some parts of cleaning functions.

English
0
1
1
626
nhlscraper
nhlscraper@nhlscraper·
Note that gc_pbps(), wsc_pbps(), and shift_charts() are going to be unstable for this coming week as we make some improvements on the quality of columns returned. Also, in the development version, we've implemented C for some parts of cleaning functions.
English
0
1
1
416
nhlscraper
nhlscraper@nhlscraper·
3. shift_chart() and shift_charts() now return more complete information, and with the new add_on_ice_players(), there are no longer instances of 0 vs. 0 and very few mismatches between the count of skaters from the shifts and play-by-play's situationCode.
nhlscraper@nhlscraper

2. add_on_ice_players() now returns 8 new columns pertaining to the length of the current shift and time elapsed since the end of the previous shift for each player on the ice; it also now infers goalieInNetId for blocked shot events.

English
0
1
3
448
nhlscraper
nhlscraper@nhlscraper·
2. add_on_ice_players() now returns 8 new columns pertaining to the length of the current shift and time elapsed since the end of the previous shift for each player on the ice; it also now infers goalieInNetId for blocked shot events.
nhlscraper@nhlscraper

We continue to enrich the cleaning functions in the development version 0.5.0.9000: 1. calculate_speed() now properly handles same-second events (with 1/n estimation) and shootouts/penalty shots; it also returns the eventId of the anchoring event.

English
0
1
2
1.1K
nhlscraper
nhlscraper@nhlscraper·
We continue to enrich the cleaning functions in the development version 0.5.0.9000: 1. calculate_speed() now properly handles same-second events (with 1/n estimation) and shootouts/penalty shots; it also returns the eventId of the anchoring event.
English
0
1
1
394