Measuring the Effects of Consistency on Winning for Individuals

10 March, 1996

Shaquille O'Neal and Nick Van Exel are both very good examples of the difficulty of evaluating players. O'Neal is clearly a dominant force every time he steps on the court, but his inability to make free throws often makes him a liability at "Winning Time", as Magic Johnson calls it. As a result, there are many that have called him just a dunking machine who should not be classified with the greats of the game. On the other hand, Van Exel is a point guard and outside shooter whose hot streaks can demoralize an opponent. His amazing runs of great shooting helped the Lakers upset the Sonics in last year's playoffs (something no one will let the Sonics forget) and personally earned Van Exel a few All-NBA votes (really!), a Reebok ad or two, and cover spots on numerous basketball publications. at the same time, he was being called Nick Van Brick (or Brick Van Exel) and shooting a meager 42% from the field during the '94-95 season.

Both O'Neal and Van Exel are, well, human, unlike Mr. Jordan who comes from the air out there. Both players have strengths and weaknesses to their game that are striking enough that those who evaluate their overall games form very different opinions. This is a terrible problem for GM's trying to build a team and for a coach trying to decide upon a lineup for various periods of a game. I'm going to shed some light on this question by looking at the characteristics of these two players and how they influence their teams' success.

There are two principal ways for evaluating the offensive abilities of individual players. One of them, floor percentage, is an estimate of the percentage of times a player contributes to his team scoring. The other, his offensive rating, is an estimate of the number of points created by that player per 100 possessions. Originally, floor percentage was developed as the principal measure of a player's offensive ability. Later, in order to maintain consistency with the predictive ability of a team's offensive rating, the individual offensive rating became the principal measure of offensive ability. Formally, this is still true, but I have come to the reailization that both numbers are actually quite important in evaluating the offensive contribution of an individual, especially with individuals like Van Exel and O'Neal.

Specifically, when one looks at the floor percentage and offensive rating for O'Neal and Van Exel, one gets a conflicting picture of the relative offensive abilities of the two. O'Neal dominates Van Exel in floor percentage, 0.608 to 0.506 in '95, indicating a tremendously superior offensive player, one who can score with much more regularity. On the other hand, Van Exel and O'Neal have very similar offensive ratings, with O'Neal edging Van Exel 115.0 to 114.1 in '95. Since offensive rating looks at points and floor percentage looks at the number of scores per possessions, something not as "bottom line" as points, it is natural to use offensive ratings as a better evaluator of talent than floor percentage .... but that would indicate that Van Exel and O'Neal are similarly offensively skilled. I almost convinced myself of this at one time, but ultimately this conclusion didn't make sense to me.

Floor percentage and offensive ratings are not ratings, despite the unfortunate name on points per 100 possesssions. By this, I mean that they are not designed to evaluate the player's offense entirely; rather they are meant to be estimates of measurable quantities, ones that I see on the court. What percentage of the time a player wants to score does he actually score? That is his floor percentage. How many points does he create with those possessions? That is his offensive rating. For teams, these are clearly measurable using the Possessions Scoring System and I have developed the theory for players as well. By having statistically measurable quantities (and not subjective ratings), we can perform realistic statistical studies. This is the basis of the comparison I will make here.

The Program for Making the Comparison

What I decided to do was to let my readers do some of the research on this issue using a program I have written in JavaScript. If you don't have Netscape 2.0, you won't be able to operate the program, which is a bummer; however, I have also written the program in Visual Basic to run on Windows machines and I can probably make this available to people if they want it. The program uses an individual's floor percentage and their offensive rating to simulate how often they outscore a hypothetical opponent using the same number of possessions in a game as they do. In this program, the player's floor percentage indicates how often the player scores, and the ratio of their offensive rating to their floor percentage indicates how many points they score on each possession. This is obviously not quite true in a game because no player scores 2.131 points on a possession -- it's always 1, 2, or 3 (or 4) -- but this is the first version of the program and improvements will be made. Here is a summary of the input information necessary, most of which is available here: When you enter each of these things, the program calculates a winning percentage. This percentage is subject to noise because of the randomness of the program, but the noise dissipates with more games simulated. Warning: I recommend 1000+ games for getting stable statistics, but this will take 30 seconds or so per 1000 games if you have a pentium. Also, you might want to consider that seasons are only 82 games long and see how winning percentage can fluctuate over a normal season with constant mean parameters.

Please report back to me with your results, including both your input parameters and the final winning percentage. If the input data came from a specific player, please mention their name, too. (Note: if you used this before 3/13, a slight change was made to fix a small error in varying the possessions per game. The program is now faster and more accurate ... how often does that happen?)

Individual Winning Percentage Calculator

Floor Pct Off. Rtg. Poss/G SD(Poss/G) #Games Opp. Rtg Win%

General Conclusions

I have made some preliminary conclusions, but I will wait until I get some feedback from readers before I make final ones. I have generally seen that "low variance players" like O'Neal do better than "high variance players" like Van Exel because they have higher floor percentages, scoring more frequently. The difference is pretty small, smaller than I would expect, but I believe it will be bigger when I improve the program to be more realistic. Something that is more clear is that increasing the spread in the number of possessions used by a player in a game brings that player closer to 0.500. This is a theme I stressed in Basketball's Bell Curve, but now I have further evidence.

Again, I do not want to bias people too much as I wait for some of their research reports.

Program Notes

The JavaScript program was based on one by Jonathan Weesner, whose program I found and modified for my purposes. (This is called computer engineering.) I am not an expert JavaScript programmer; in fact, I have only written one very small one previously. And my java skills are rusting a little because I program in other languages at my other job. So what you see here is primitive and probably not free of bugs. I am using two random number generators in this program because it is my understanding that one is not built into JavaScript for non-unix platforms. The first is a random number generator I found on the web that, because it accesses the time on your computer, is very slow. I use it to generate a seed for the other random number generator, which is a linear congruential one (a word I learned today) that is quick and dirty, but probably good enough for my purposes. It is much quicker, though still slow, in my opinion.

Note that I use the random number generator to get a uniform distribution. I use the uniform to determine when a player with a given floor percentage scores. I also use a uniform distribution to represent how many possessions a player uses in a game, which probably isn't a great approximation, but makes the point here. Again, for more details on the program, feel free to view the source code or contact me.