What is the true impact of a player?

Player Impact Stats: Innovative insight by applying RAPM to other stats beyond points

Jesse Fischer • June 1, 2019
Photo: boegh

In my previous post, I took a look at how NCAA play-by-play stint data can give more accurate advanced stats. This post will take that a step further by applying RAPM to other stats beyond just points. Doing so unlocks unique insight which may not show up in traditional advanced stats. We can use this innovative data to better understand the impact that players have on team performance and playing style.

Player Impact Stats

By performing RAPM-like calculations, we are able to control for opposing players and teammates on the floor, isolating the true impact of an individual player. The primary usage of the RAPM framework is to determine how much each player impacts team and opponent points per possession (ORAPM and DRAPM). However, the amount of interesting and valuable information we can learn by applying RAPM to other box score counting stats (ast, blk, reb, etc.) is limitless. For example, we can better understand how well a player attacks the rim (e.g. blocks against, personal fouls drawn) or how a player impacts the game on defense (e.g. opponent pace impact, defensive eFG%). These insights can be used by NBA draft models to better project NBA potential.

Below you can find descriptions of all the innovative stats I am currently calculating. Let me know if you have additional ideas!

Stat Description What measuring?
aFGP | aDFGP Adjusted (Defensive) Field Goal Percentage Player impact to team/opponent FG%
aFG3P | aDFG3P Adjusted (Defensive) Three Point Percentage Player impact to team/opponent 3P%
aEFG | aDEFG Adjusted (Defensive) Effective Field Goal Percentage Player impact to team/opponent EFG%
a3PAr | aD3PAr Adjusted (Defensive) Three Point Attempt Rate Player impact to team/opponent 3PAr
aFTr | aDFTr Adjusted (Defensive) Free Throw Rate Player impact to team/opponent FTr
aORB | aDRB Adjusted Offensive|Defensive Rebounds Player impact to team ORB%/DRB%
aAST | aASTA Adjusted Assists (Against) Player impact to team/opponent AST%
aSTL | aSTLA Adjusted Steals (Against) Player impact to team/opponent STL%
aBLK | aBLKA Adjusted Blocks (Against) Player impact to team/opponent BLK%
aTOV | aTOVA Adjusted Turnovers (Against) Player impact to team/opponent TOV%
aPF | aPFD Adjusted Personal Fouls (Drawn) Player impact to team/opponent PF%
aOPACE | aDPACE Adjusted Offensive|Defensive Pace Player impact to team/opponent PACE

Bayesian Prior

Similar to Bayesian RAPM, I incorporated Bayesian priors to improve reliability, stability, and general performance. The RAPM-style calculations being performed all include an offensive and defensive component (e.g. ORB|DRB, BLK|BLKA, 3PAr|D3PAr). Many of the components have an obvious prior that you can assign for each player (e.g. ORB%, DRB%, 3PAr), however others don't have readily available statistics (e.g. BLKA, D3PAr). Typically, each RAPM calculation is able to utilize a prior for at least one of the two components. PACE is the only calculation which doesn't utilize any prior. Below you can see a list of the priors being used (coefficients based on results from corresponding "vanilla" RAPM-style calculation).

Stat Prior Coefficient Intercept
aFGP FGP% 0.029391 -0.011547
aFG3P 3P% 0.01857 -0.00603
aEFG eFG% 0.037284 -0.017261
a3PAr 3PAr% 4.907318 -1.696262
aFTr FTr% 3.729186 -1.297644
aORB ORB% 0.083874 -0.394939
aDRB DRB% 0.028404 -0.262161
aAST AST% 0.024444 -0.295840
aSTL STL% 0.206034 -0.372796
aBLK BLK% 0.080668 -0.128338
aTOV TOV% 0.041269 -0.827779
aPF PF% 0.058135 -0.353120


Below you can view players with the highest and lowest values across the different stats (going back to 2010). These results are currently filtered only to players who were selected in a NBA draft. Leading up to the 2019 draft, I will hope to share similar insight on 2019 draftees from these innovative stats - follow me on Twitter to hear more. Lastly, I am very excited to incorporate these innovative stats into my NBA draft model (results coming soon!).

TJ LeafUCLA20170.0350.617
Georges NiangIowa State20130.0330.515
Georges NiangIowa State20160.0330.546
Donte DiVincenzoVillanova20180.0310.481
Jakob PoeltlUtah20150.0310.681
Will BartonMemphis20120.0310.509
Larry NanceWyoming20140.030.544
T.J. WarrenNC State20130.030.622
Justise WinslowDuke20150.030.486
Anthony DavisKentucky20120.0290.623
Marcus MorrisKansas20110.0290.57
Doug McDermottCreighton20120.0290.601
Rondae Hollis-JeffersonArizona20150.0290.502
Justin PattonCreighton20170.0280.676
Robert WilliamsTexas A&M20180.0280.632
Kentavious Caldwell-PopeGeorgia2012-0.0070.396
Sindarius ThornwellSouth Carolina2015-0.0070.34
George KingColorado2014-0.0070.282
Tony CarrPenn State2017-0.0080.377
Melvin FrazierTulane2016-0.0080.401
Nate WoltersSouth Dakota State2010-0.0080.381
Isaiah CousinsOklahoma2013-0.0090.279
Josh RichardsonTennessee2012-0.0090.353
Josh SelbyKansas2011-0.0090.373
Grant JerrettArizona2013-0.010.409
Frank KaminskyWisconsin2012-0.010.411
Johnny OBryantLSU2012-0.0130.399
George KingColorado2016-0.0130.446
Abdel NaderNorthern Illinois2012-0.0140.337
Abdel NaderNorthern Illinois2013-0.0180.337