Skip to contents

nhlscraper 0.5.0.9000

  • Documentation website now features more guided examples and explanation articles.
  • replays() is now added to retrieve season-aggregate replays.
  • contracts() now returns more contracts, dating back to the 90’s (and then some).
  • shift_chart() (and consequentially, shift_charts()) now returns completed shift charts for all games where at least either one of API or HTML report is available.
  • gc_play_by_play() and wsc_play_by_play() now return new schema.
    • HTML-report-derived on-ice goalie/skater ID columns are now added, limited to faceoff, hit, shot-on-goal, giveaway, missed-shot, blocked-shot, goal, delayed-penalty, takeaway, and failed-shot-attempt, while situationCode-derived strength/count columns remain available wherever situationCode itself is available. Check out our “Article” section on the documentation website to learn more.
    • add_shift_times() is now added to populate scalar on-ice shift time elapsed columns via C.
    • add_deltas() now handles event-to-event deltas in C, returns raw and normalized X/Y deltas alongside distance and angle deltas, and properly handles same-second events and shootouts/penalty shots with 1/n estimation.
    • calculate_speed() is now defunct; use add_deltas() instead.
  • calculate_expected_goals() now uses a fixed six-partition ridge xG model.

nhlscraper 0.5.0

CRAN release: 2026-02-24

  • All return IDs, codes, and names are now standardized (i.e., no more arbitrary id columns and inconsistent column names across functions).
  • contracts() is now added to get all NHL contracts since the 2011-2012 season.
  • ig_game_shot_locations() and x_game_shot_locations() now use continuous xG scale instead of bins.
  • calculate_expected_goals() now combines the previous xG calculation functions; as a result, calculate_expected_goals_v1(), calculate_expected_goals_v2(), and calculate_expected_goals_v3() are now defunct.
  • calculate_speed() is now added to calculate event-to-event deltas in play-by-plays.
  • add_shooter_biometrics() is now added to add shooter biometrics to Fenewick events in play-by-plays.
  • add_goalie_biometrics() is now added to add goalie biometrics to Fenewick events in play-by-plays.
  • ps() is now deprecated; use pss() instead.

nhlscraper 0.4.2

CRAN release: 2026-01-28

nhlscraper 0.4.1

CRAN release: 2025-12-17

  • All API call functions are now wrapped with try-catch.

nhlscraper 0.4.0

CRAN release: 2025-11-30

  • Documentation website now features proper example.
  • New functions to help clean the data are now available:
    • strip_game_id()
    • strip_time_period()
    • strip_situation_code()
    • flag_is_home()
    • flag_is_rebound()
    • flag_is_rush()
    • count_goals_shots()
    • normalize_coordinates()
    • calculate_distance()
    • calculate_angle()
  • New functions to run built-in models are now available:
    • calculate_expected_goals_v1()
    • calculate_expected_goals_v2()
    • calculate_expected_goals_v3()
  • New function to help graph the data is now available:
  • New functions to help share the data are now available:

nhlscraper 0.3.0

nhlscraper 0.2.0

CRAN release: 2025-07-17

nhlscraper 0.1.1

CRAN release: 2025-06-11

  • Some functions are now more optimized.

nhlscraper 0.1.0