Basketball Prospectus: Unfiltered Everything Else is Fluff.

November 7, 2012

NBA True Winning % Talent Estimates

Filed under: Uncategorized — Neil Paine @ 12:10 pm

I wrote about this for the NFL at Chase Stuart’s Football Perspective, and I hinted at it for the NBA in this ESPN Insider piece about why an 82-game basketball season is unnecessarily long, so after Kevin wrote today’s article on the reliability of early-season records, I figured I might as well touch on the topic of regressing NBA team records to the mean in-season.

The basic premise is rooted in True Score Theory, which assumes that any observed result is the sum of an underlying “true” skill and a random error component. Any single sporting contest is an imperfect measure of the relative strengths of the two opponents, but over a large enough sample we can assume the random error will subside and we’ll be able to separate signal from noise.

How big of a sample do we need, though?

Glad you asked. The answer to that question comes from this Tangotiger post about true talent levels for sports leagues. From 2005-2011, the NBA had 30 teams and played an 82-game schedule. Over that span, the yearly standard deviation of team winning percentage was, on average, 0.155. Since variance equals the standard deviation squared, this means the NBA’s observed variance of winning percentage, var(observed), is 0.155^2, or 0.024.

The random standard deviation of NBA records in an 82-game season would be sqrt(0.5*0.5/82), or 0.055, meaning var(random) = 0.055^2 or 0.003.

Going back to True Score Theory, we know that var(observed) = var(true) + var(random). Rewriting that in a way that solves for the true variance, we see that var(true) = var(observed) – var(random). In this case, var(true) = 0.024 – 0.003 = 0.021. The square root of 0.021 is 0.145, so 0.145 is stdev(true), a.k.a. the standard deviation of true winning percentage talent in the current NBA.

Armed with that number, we can calculate the schedule length a season would need in order for var(true) to equal var(random) using:


In the NBA, that number is 12 (more accurately, it’s 11.84, but it’s easier to just use 12). So when you want to regress an NBA team’s W-L record to the mean, at any point during the season, take twelve games of .500 ball (6 wins, 6 losses), and add them to the actual record. This will give you the best estimate of the team’s “true” winning percentage talent going forward.

So far this season, that yields the following set of true WPct talents:

Team 			W 	L 	W%(obs)	W%(true)
San Antonio Spurs 	4	0	1.000	0.625
New York Knicks 	3	0	1.000	0.600
Milwaukee Bucks 	2	0	1.000	0.571
Chicago Bulls 		3	1	0.750	0.563
Dallas Mavericks 	3	1	0.750	0.563
Miami Heat 		3	1	0.750	0.563
Houston Rockets 	2	1	0.667	0.533
Memphis Grizzlies 	2	1	0.667	0.533
Minnesota Timberwolves 	2	1	0.667	0.533
New Orleans Hornets 	2	1	0.667	0.533
Orlando Magic 		2	1	0.667	0.533
Cleveland Cavaliers 	2	2	0.500	0.500
Golden State Warriors 	2	2	0.500	0.500
Indiana Pacers 		2	2	0.500	0.500
Los Angeles Clippers 	2	2	0.500	0.500
Oklahoma City Thunder 	2	2	0.500	0.500
Portland Trail Blazers 	2	2	0.500	0.500
Atlanta Hawks 		1	1	0.500	0.500
Brooklyn Nets 		1	1	0.500	0.500
Charlotte Bobcats 	1	1	0.500	0.500
Boston Celtics 		1	2	0.333	0.467
Philadelphia 76ers 	1	2	0.333	0.467
Denver Nuggets 		1	3	0.250	0.438
Los Angeles Lakers 	1	3	0.250	0.438
Phoenix Suns 		1	3	0.250	0.438
Sacramento Kings 	1	3	0.250	0.438
Toronto Raptors 	1	3	0.250	0.438
Utah Jazz 		1	3	0.250	0.438
Washington Wizards 	0	2	0.000	0.429
Detroit Pistons 	0	4	0.000	0.375

It doesn’t really tell you anything about the relative order of teams that you couldn’t already know from regular winning percentage, but it does give a better estimate of future expected winning percentage if you plug the WPct talent numbers into, say, Bill James’ log5 formula.

Another benefit of this process is the ability to compare that “regress-halfway” number to other sports. In basketball, the number is 11.8 in an 82-game schedule (you regress halfway to the mean 14.4% of the way into the season); in the NFL over the same 2005-11 span, the number was 10.2 in a 16-game schedule (64% of the season), and in baseball it was 88.1 in a 162-game slate (54.4% of the season).

You can use those numbers to generate equivalent season lengths between sports. The NFL’s equivalent of an 82-game NBA season? 70.9 games. And baseball’s equivalent? A mind-boggling 610.4-game schedule!

One last way to frame the data. If you picked two teams at random, looked at their records, and knew their “true” talent levels, how often would the team we observed to be better via W-L actually be the better team? In baseball, 79.8% of the time. In the NFL, 78.5% of the time. But in the NBA? 88.4% of the time.

The moral of the story: there’s a lot more certainty in NBA records than other sports, and these types of formulas help us measure that, in addition to regressing a team’s W-L record to the mean for predictive purposes.

Reading Material:

Email Neil at Follow him on Twitter at @Neil_Paine.

November 6, 2012

Hoops List: Week 1

Filed under: Uncategorized — Bradford Doolittle @ 7:26 pm

I spent the last couple of days revamping the sub-structure on which the Hoops List are compiled, so while I don’t have any pithy comments for each team, I do have my first set of in-season rankings. I’ve changed my methodology from past seasons but rather than point out what is different, I’ll quickly walk through the steps by which these numbers are compiled.

1. I start by compiling each team’s in-season POW, which is a not-so-clever abbreviation for a power rating. These are the numbers that have been included in each of the first four editions of Pro Basketball Prospectus. The metric is meant to capture the “true talent” level of each team, as expressed by the probability that the team will win the championship. POW isn’t a magic bullet, but I’ve found that in most years, it has just the tiniest bit of advantage over point differential in terms of correlating with postseason success. I hadn’t messed with the metric much over the last three years, but I made a couple of slight modifications for this season:

First, I tweaked the way I measure strength of schedule. In my schedule simulator, each team is assigned a probability for winning each game based on team strength (as calculated by a blend of point differential and preseason projection), home court advantage and effects caused by game clustering (back-to-backs, etc.) Now, I am calculating schedule strength as an average of these probabilities. Theoretically, this should give me a more accurate portrait of which teams have played the more difficult slates.

The other components of POW are the same. I start with Pythagorean winning percentage, blend that with an adjusted winning percentage based on home-road success and then factor in the strength of schedule. The results are expressed as wins per 82 games, so a POW of 54.2 means a team has a true talent level of roughly a 54-28 team.

2. The second change I’ve made is that I decided to start giving extra weight to recent performance. My prior research didn’t suggest this was necessary, as long as a team’s roster remained largely stable. However, the change doesn’t harm accuracy either, and will do a better job of evaluating teams that have made a major transaction or suffered a significant, long-term injury to a star player.

3. At this juncture, I’ve got an in-season POW baseline. Next I factor in my NBAPET preseason projection. This is also a new procedure. Before, I only considered in-season results. The preseason projections are gradually phased out as the season progresses and disappear altogether by April 17.

4. My projection-adjusted POW is then fed into my simulation engine. The baseline probabilities for future games are based on current SCHOENE projections. So if a team makes a move or suffers an injury, then this will be reflected in the games yet to be played. Games already played are hard-coded, with the actual winners getting credit for those wins. The remainder of the schedule is played out 1,000 times, generating a new projected win total. This, finally, is the number by which teams are ranked in the Hoops List which, I swear, will normally appear on Monday afternoons. Also, running the sims gives revised playoff and championship odds, which I note.

Ordinarily, the rankings will be presented with 100-200 word snippets of analysis for each team, though as mentioned I’m forgoing that this week. The intent is to provide a weekly snapshot of the league. Also, the rankings provide a kind of narrative for each team’s season when read on a week-by-week basis. I find that handy.

NOTE: Numbers through Nov. 6

1. Miami Heat (3-1)
POW: 60.8; LAST WEEK: 61.2
SIMS: 100.0% playoffs; 49.3% conf; 30.6% title
ORTG: 120.9 (1); DRTG: 115.2 (30)

2. San Antonio Spurs (4-0)
POW: 57.9; LAST WEEK: 56.7
SIMS: 100.0% playoffs; 22.9% conf; 12.1% title
ORTG: 110.6 (8); DRTG: 100.0 (5)

3. Denver Nuggets (0-3)
POW: 56.4; LAST WEEK: 59.2
SIMS: 100.0% playoffs; 27.7% conf; 16.7% title
ORTG: 101.4 (23); DRTG: 110.4 (23)

4. Minnesota Timberwolves (2-1)
POW: 54.8; LAST WEEK: 54.5
SIMS: 100.0% playoffs; 14.0% conf; 6.1% title
ORTG: 106.5 (12); DRTG: 105.0 (14)

5. L.A. Lakers (1-3)
POW: 54.2; LAST WEEK: 58.2
SIMS: 99.9% playoffs; 22.1% conf; 12.8% title
ORTG: 111.4 (6); DRTG: 111.2 (25)

6. New York Knicks (3-0)
POW: 52.3; LAST WEEK: 49.9
SIMS: 100.0% playoffs; 11.9% conf; 4.4% title
ORTG: 120.2 (2); DRTG: 98.0 (2)

7. Atlanta Hawks (1-1)
POW: 50.9; LAST WEEK: 51.5
SIMS: 99.7% playoffs; 15.8% conf; 6.7% title
ORTG: 112.1 (5); DRTG: 111.0 (24)

8. L.A. Clippers (2-2)
POW: 50.5; LAST WEEK: 52.2
SIMS: 97.1% playoffs; 5.5% conf; 2.1% title
ORTG: 110.0 (9); DRTG: 107.9 (19)

9. Oklahoma City Thunder (1-2)
POW: 48.4; LAST WEEK: 50.0
SIMS: 89.4% playoffs; 3.7% conf; 1.6% title
ORTG: 105.4 (15); DRTG: 104.3 (13)

10. Boston Celtics (1-2)
POW: 48.4; LAST WEEK: 49.9
SIMS: 98.3% playoffs; 8.8% conf; 2.5% title
ORTG: 103.6 (20); DRTG: 111.3 (26)

11. Memphis Grizzlies (2-1)
POW: 47.6; LAST WEEK: 46.4
SIMS: 83.6% playoffs; 2.2% conf; 0.8% title
ORTG: 105.4 (16); DRTG: 101.9 (10)

12. Chicago Bulls (2-1)
POW: 47.5; LAST WEEK: 47.6
SIMS: 96.7% playoffs; 5.6% conf; 1.5% title
ORTG: 104.9 (18); DRTG: 94.8 (1)

13. Utah Jazz (1-3)
POW: 46.4; LAST WEEK: 47.3
SIMS: 75.5% playoffs; 1.4% conf; 0.4% title
ORTG: 106.6 (11); DRTG: 107.2 (18)

14. Philadelphia 76ers (1-2)
POW: 45.7; LAST WEEK: 47.7
SIMS: 91.4% playoffs; 4.4% conf; 1.0% title
ORTG: 95.9 (28); DRTG: 106.8 (17)

15. Indiana Pacers (2-2)
POW: 45.0; LAST WEEK: 45.2
SIMS: 87.8% playoffs; 1.7% conf; 0.2% title
ORTG: 96.7 (27); DRTG: 100.2 (7)

16. Dallas Mavericks (3-1)
POW: 45.0; LAST WEEK: 42.7
SIMS: 53.8% playoffs; 0.6% conf; 0.2% title
ORTG: 117.3 (4); DRTG: 106.7 (16)

17. Brooklyn Nets (1-1)
POW: 43.8; LAST WEEK: 44.8
SIMS: 76.9% playoffs; 2.4% conf; 0.4% title
ORTG: 111.1 (7); DRTG: 113.2 (28)

18. Toronto Raptors (1-2)
POW: 40.0; LAST WEEK: 40.7
SIMS: 27.8% playoffs; 0.2% conf; 0.0% title
ORTG: 105.8 (13); DRTG: 102.2 (11)

19. Milwaukee Bucks (2-0)
POW: 39.4; LAST WEEK: 37.3
SIMS: 21.3% playoffs; 0.0% conf; 0.0% title
ORTG: 107.5 (10); DRTG: 100.1 (6)

20. New Orleans Hornets (2-1)
POW: 36.2; LAST WEEK: 35.1
SIMS: 0.6% playoffs; 0.0% conf; 0.0% title
ORTG: 102.3 (22); DRTG: 100.4 (8)

21. Cleveland Cavaliers (2-2)
POW: 30.5; LAST WEEK: 29.5
SIMS: 0.1% playoffs; 0.0% conf; 0.0% title
ORTG: 104.9 (17); DRTG: 109.0 (20)

22. Golden State Warriors (2-2)
POW: 30.2; LAST WEEK: 28.3
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 103.8 (19); DRTG: 105.4 (15)

23. Sacramento Kings (1-3)
POW: 29.0; LAST WEEK: 29.3
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 93.3 (30); DRTG: 99.5 (4)

24. Portland Trail Blazers (2-2)
POW: 28.9; LAST WEEK: 26.9
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 105.5 (14); DRTG: 110.1 (22)

25. Orlando Magic (2-0)
POW: 26.0; LAST WEEK: 23.7
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 117.7 (3); DRTG: 99.3 (3)

26. Detroit Pistons (0-3)
POW: 26.0; LAST WEEK: 27.7
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 97.4 (26); DRTG: 112.5 (27)

27. Houston Rockets (2-1)
POW: 24.9; LAST WEEK: 22.8
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 103.5 (21); DRTG: 101.4 (9)

28. Phoenix Suns (1-3)
POW: 23.4; LAST WEEK: 24.5
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 98.1 (25); DRTG: 110.0 (21)

29. Washington Wizards (0-2)
POW: 22.1; LAST WEEK: 22.7
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 95.8 (29); DRTG: 103.1 (12)

30. Charlotte Bobcats (1-1)
POW: 17.5; LAST WEEK: 16.6
SIMS: 0.0% playoffs; 0.0% conf; 0.0% title
ORTG: 100.8 (24); DRTG: 114.7 (29)

November 2, 2012

Making the Point About Projections and Predictions

Filed under: Uncategorized — Kevin Pelton @ 5:05 pm

In the few weeks since Pro Basketball Prospectus 2012-13 (and the results of the SCHOENE Projection System) were released to the world, I’ve hammered home the difference between projections and predictions quite a bit, but I’m going to do so again because I think it’s an important distinction.

The other day on TrueHoop, Kevin Arnovitz discussed the popularity of the Denver Nuggets in a back-and-forth with Beckley Mason.

Aside from the stylistic appeal, where does this collective love for Denver come from? Is it a sincere belief the Nuggets have the necessary tools to mount a guerrilla war in the West and take down the likes of the Thunder or the Lakers or just a desire to see a verdict rendered once and for all that Carmelo Anthony is a bad guy?

I also wonder if the post-Melo Nuggets haven’t become a symbol for those who were repelled by the Anthony saga two years ago. In the era of the superteam, romantics want the Nuggets to prove that a team of non-superstars can compete for an NBA title through sheer effort, athleticism and creativity. A lot of basketball junkies want to live in a world where the 2004 Pistons aren’t a historical outlier and Anthony is the fool. The Nuggets represent their best hope.

Now, I don’t think Kevin was specifically referencing the optimistic statistical projections for the Nuggets (ours and John Hollinger‘s), but having the two points so close together reinforces the danger in conflating “the numbers” and our opinions based on them. I’d hate to have anyone think that the reason SCHOENE puts Denver atop the West has anything to do with liking the idea of an elite starless team.

As Kevin has pointed out via Nate Silver‘s new book The Signal and the Noise, the numbers never speak for themselves. And it would be disingenuous for me to argue that SCHOENE or any other projection system is completely objective. There are subjective assessments of how basketball works inherently built into the system. At the same time, the projection for the Nuggets–or any other team–has nothing to do with what I think of their players, the team or the narrative. The projections are individually compiled in an unbiased manner, and I do think it’s important for readers to trust that what they see from SCHOENE is strictly where the numbers lead, and if that occasionally leads to some LOLs it’s a small price to pay.

Naturally, this reflects the ongoing discussion about Silver’s more important projections for what’s going to happen next Tuesday. It’s perfectly fair to criticize his method, if you understand it. But simply demeaning Silver (who, it’s worth noting, hired the Basketball Prospectus staff in his old baseball life) because he’s an admitted liberal who happens to have the Democratic candidate more likely to win is silly and demeaning to his work. And I happen to think that’s easier to explain when the numbers and the opinions are explicitly kept separate.

You can contact Kevin at Follow him on Twitter at @kpelton.

« Newer Posts

Powered by WordPress