Skip to contents

Get NBA Stats API play-by-play

Get NBA Stats API play-by-play

Usage

nba_pbp(game_id, on_court = TRUE, version = "v3", p = NULL, ...)

Arguments

game_id

Game ID - 10-digit zero-padded ID (e.g., '0022201086')

on_court

If TRUE (default), on-court player IDs are added for each play event. V3 uses nba_gamerotation() stint data; V2 infers lineups from substitution events.

version

Play-by-play version - "v3" (default) or "v2". V3 returns richer data with shot coordinates, shot values, and V3 action types. V2 is available from 2016-17 onwards.

p

Optional progress object from progressr (default: NULL). Used internally by nba_pbps().

...

Additional arguments passed to an underlying function like httr.

Value

Returns a data frame: PlayByPlay

col_nametypesdescription
game_idcharacterUnique game identifier.
event_numcharacterSequential event number within the game (V2 PBP).
event_typecharacterEvent / play type code (V2 PBP).
event_action_typecharacterNumeric event-action-type code (V2 PBP).
periodnumericPeriod of the game (1-4 quarters; 5+ for OT).
clockcharacterGame clock value.
minute_gamenumericMinute game.
time_remainingnumericTime remaining.
wc_time_stringcharacterWc time string.
time_quartercharacterTime quarter.
minute_remaining_quarternumericMinute remaining quarter.
seconds_remaining_quarternumericSeconds remaining quarter.
action_typecharacterAction type label (e.g. 'Made Shot', 'Substitution').
sub_typecharacterAction sub-type label.
home_descriptioncharacterHome team's description.
neutral_descriptioncharacterNeutral description.
visitor_descriptioncharacterVisitor description.
descriptioncharacterLong-form description text.
locationcharacterLocation.
scorecharacterFinal score.
away_scorenumericAway team score at the time of the play.
home_scorenumericHome team score at the time of the play.
score_margincharacterScore margin.
person1typecharacterPerson1type.
player1_idcharacterV2 PBP primary player ID (e.g. shooter / fouler).
player1_namecharacterV2 PBP primary player name.
player1_team_idcharacterTeam ID of player1.
player1_team_citycharacterPlayer1 team city.
player1_team_nicknamecharacterPlayer1 team nickname.
player1_team_abbreviationcharacterPlayer1 team abbreviation.
person2typecharacterPerson2type.
player2_idcharacterV2 PBP secondary player ID (e.g. assister / fouled-by).
player2_namecharacterV2 PBP secondary player name.
player2_team_idcharacterTeam ID of player2.
player2_team_citycharacterPlayer2 team city.
player2_team_nicknamecharacterPlayer2 team nickname.
player2_team_abbreviationcharacterPlayer2 team abbreviation.
person3typecharacterPerson3type.
player3_idcharacterV2 PBP tertiary player ID (e.g. blocker).
player3_namecharacterV2 PBP tertiary player name.
player3_team_idcharacterTeam ID of player3.
player3_team_citycharacterPlayer3 team city.
player3_team_nicknamecharacterPlayer3 team nickname.
player3_team_abbreviationcharacterPlayer3 team abbreviation.
video_available_flagcharacterVideo available flag.
team_leadingcharacterTeam leading.
x_legacyintegerV2-format X coordinate (preserved for V3-to-V2 compatibility).
y_legacyintegerV2-format Y coordinate (preserved for V3-to-V2 compatibility).
shot_distancenumericShot distance from the basket, in feet.
shot_resultcharacterShot result ('Made' / 'Missed').
is_field_goalinteger1 if the action was a field goal; 0 otherwise.
points_totalintegerRunning total of points scored.
shot_valueintegerPoint value of the shot (2 or 3).
away_player1numericAway team's player1.
away_player2numericAway team's player2.
away_player3numericAway team's player3.
away_player4numericAway team's player4.
away_player5numericAway team's player5.
home_player1numericHome team's player1.
home_player2numericHome team's player2.
home_player3numericHome team's player3.
home_player4numericHome team's player4.
home_player5numericHome team's player5.

Details

 nba_pbp(game_id = '0022201086')
 nba_pbp(game_id = '0022201086', version = "v2")

Author

Jason Lee