Comparing the contribution of NBA draft picks
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
When it comes to the NBA draft, experts tend to argue about a number of things: at which position will a player be selected? what is the best draft class ever? etc… Luckily, the wealth of data made available by the great people of http://www.basketball-reference.com/draft/ make it possible to address a number of these, and other questions.
To begin, I started off by writing a quick Python script to scrape draft data for the time period of 1980-2014 (see at the end of this post for the source code, or on my GitHub). For the purpose of this analysis, I focussed on some key metrics that I deemed to be informative and useful enough to investigate further, which included:
- Name of player (player)
- College of drafted player (college)
- Year of draft (draft_year)
- Draft pick rank (rank)
- Team that drafter the player (team)
- Total games played (gp)
- Total minutes played (mp)
- Minutes per game (mpg)
- Points per game (ppg)
- Assists per game (apg)
- Rebounds per game (rbg)
- Win shares (ws)
- Win shares per 48 minutes (ws_48)
- Total years in league (yrs)
Once this was achieved, I began by measuring the respective contribution of each pick position during the period of 1980-2014. Here, I simply computed and normalized the median statistics for each pick position. Not too surprisingly, higher draft picks tend to be contribute more to their respective teams, although we do notice that some late 2nd round draft pick have high win shares per 48 numbers. It turns out that these correspond to the picks at which Kurt Rambis (57th) and Manu Ginobilli (58th) were picked…but more on this later
Next, I decided to estimate the quality of each draft year by measuring how players performed in comparison to players picked at the same rank during other years. I was somewhat surprised to discover that the draft crop of 2008 was the one with the highest win shares, although looking back at the players that participated at that draft, it makes a lot of sense! On the other hand, the vaunted draft class of 1984 (Olajuwon, Barkley, Jordan) and 2003 (James, Anthony, Wade, Bosh) did not fare as well, which may be attributable to the fact that these included more elite players, but were far less deep in the lower picks of the draft.
Next, I looked at the longevity of each draft pick, in other words how long each draft pick is expected to remain in the NBA league, which can be achieved by using survival curves. Not too surprisingly, higher draft picks are much more likely to stay longer in the league. As a general observation, this also means that NBA teams are quite proficient at selecting the right players at the right position.
At this point, we can examine the relative performance of NBA teams with regards to their drafting skills. To do this, I compared the performance of each player compared to the average performance of other players drafted at the same position, computed the respective ratios, and summed these up for each NBA team. This analysis revealed that the top 5 drafting teams were Detroit Pistons, Cleveland Cavaliers, Memphis Grizzlies, Phoenix Suns and the San Antonio Spurs (I purposely ignored the Brooklyn Nets and the New Orleans Hornets because of the small number of years these two teams have been in the league.)
Finally, I decided to look for the best players picked at each position. Again, I compared each player’s career stats to the average numbers obtained by other players picked at the same position. For display purposes, I only show the top three players at each pick position, although you can easily reproduce the results by re-running my code here. (At this point, I should take the opportunity to advertise the great stargazer R package, which allows to quickly output R objects into LaTex or HTML tables). The results I obtained made a lot of sense, and I was very interested to learn that even at pick position 13, Kobe Bryant was only the 2nd best pick, as he was outnumbered by none other than the Mailman himself (i.e. Karl Malone). Of course, this analysis only considers numbers as opposed to achievements and trophies, but I think it is still amusing to find that Kobe Bryant isn’t even the most productive player at his position.
Best pick | 2nd best pick | 3rd best pick | |
1 | LeBron James | John Wall | Allen Iverson |
2 | Isiah Thomas | Jason Kidd | Gary Payton |
3 | Michael Jordan | Deron Williams | Pau Gasol |
4 | Chris Paul | Russell Westbrook | Stephon Marbury |
5 | Charles Barkley | Dwyane Wade | Kevin Garnett |
6 | Damian Lillard | Brandon Roy | Antoine Walker |
7 | Kevin Johnson | Stephen Curry | Alvin Robertson |
8 | Andre Miller | Clark Kellogg | Detlef Schrempf |
9 | Dirk Nowitzki | Tracy McGrady | Andre Iguodala |
10 | Paul Pierce | Brandon Jennings | Paul George |
11 | Fat Lever | Michael Carter-Williams | Terrell Brandon |
12 | Mookie Blaylock | Muggsy Bogues | John Bagley |
13 | Karl Malone | Kobe Bryant | Sleepy Floyd |
14 | Tim Hardaway | Clyde Drexler | Peja Stojakovic |
15 | Steve Nash | Al Jefferson | Gary Grant |
16 | John Stockton | Nikola Vucevic | Metta World Peace |
17 | Jrue Holiday | Josh Smith | Shawn Kemp |
18 | Mark Jackson | Ty Lawson | Joe Dumars |
19 | Rod Strickland | Zach Randolph | Jeff Teague |
20 | Larry Nance | Jameer Nelson | Paul Pressey |
21 | Rajon Rondo | Darren Collison | Michael Finley |
22 | Scott Skiles | Reggie Lewis | Kenneth Faried |
23 | Tayshaun Prince | A.C. Green | Wilson Chandler |
24 | Sam Cassell | Kyle Lowry | Arvydas Sabonis |
25 | Jeff Ruland | Mark Price | Nicolas Batum |
26 | Vlade Divac | Kevin Martin | George Hill |
27 | Dennis Rodman | Jamaal Tinsley | Jordan Crawford |
28 | Tony Parker | Sherman Douglas | Gene Banks |
29 | Toni Kukoc | Josh Howard | P.J. Brown |
30 | Gilbert Arenas | Nate McMillan | David Lee |
31 | Doc Rivers | Danny Ainge | Nikola Pekovic |
32 | Rashard Lewis | Brent Price | Luke Walton |
33 | Grant Long | Dirk Minniefield | Steve Colter |
34 | Carlos Boozer | Mario Chalmers | C.J. Miles |
35 | Mike Iuzzolino | DeAndre Jordan | Derek Smith |
36 | Clifford Robinson | Ersan Ilyasova | Omer Asik |
37 | Nick Van Exel | Mehmet Okur | Jeff McInnis |
38 | Chandler Parsons | Chris Duhon | Steve Blake |
39 | Rafer Alston | Earl Watson | Khris Middleton |
40 | Monta Ellis | Dino Radja | Lance Stephenson |
41 | Cuttino Mobley | Popeye Jones | Otis Smith |
42 | Stephen Jackson | Patrick Beverley | Matt Geiger |
43 | Michael Redd | Eric Snow | Trevor Ariza |
44 | Chase Budinger | Malik Rose | Cedric Henderson |
45 | Goran Dragic | Hot Rod Williams | Antonio Davis |
46 | Jeff Hornacek | Jerome Kersey | Voshon Lenard |
47 | Paul Millsap | Mo Williams | Gerald Wilkins |
48 | Marc Gasol | Micheal Williams | Cedric Ceballos |
49 | Andray Blatche | Haywoode Workman | Kyle O’Quinn |
50 | Ryan Gomes | Paul Thompson | Lavoy Allen |
51 | Kyle Korver | Jim Petersen | Lawrence Funderburke |
52 | Fred Hoiberg | Anthony Goldwire | Lowes Moore |
53 | Anthony Mason | Tod Murphy | Greg Buckner |
54 | Sam Mitchell | Shandon Anderson | Mark Blount |
55 | Luis Scola | Kenny Gattison | Patrick Mills |
56 | Ramon Sessions | Amir Johnson | Joe Kopicki |
57 | Manu Ginobili | Marcin Gortat | Frank Brickowski |
58 | Kurt Rambis | Don Reid | Robbie Hummel |
59 | NA | NA | NA |
60 | Isaiah Thomas | Drazen Petrovic | Robert Sacre |
As usual, all the code for this analysis can be found on GitHub account.
CAVEATS
With regards to the analysis shown above, it is important to highlight a few potential caveats:
- I worked with career averages, which somewhat ignores the years of peak performance achieved by certain players. However, I feel it that career averages are a reasonably good proxy for overall player competence.
- I completely ignored the fact that some teams had more opportunities to select higher draft picks than others (cough…Cleveland…cough). As such, there may be a bias towards historically bad teams that would have been in the top 5 picks more often than others. However, I did compare each player to others that were picked at the same position, some hopefully this will bypass the issue (for example, if a team had plenty of NO 1 picks that were bad compared to other NO 1 picks, this insight will be revealed in the analysis)
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.