It’s been a little less than a week since I released part II of my player evaluations. In this release I’m not using the term “rank”. This is a statistics that measure how well these players have played so far, whether that makes them the best player or lucky is a matter of opinion as it always is with statistics. If there were no opinion then we could just evaluate players based on salary (perfect correlation of performance to pay). There are still small tweaks I can make to the algorithm improve, however this is about as good as it will get. Remember also, that this evaluates player’s performance at even strength which accounts for 65% of all goals and 72% of ice time.
The most significant change was to regress to the mean, this means that I look at each player’s score and ask the question: “is it more likely this player is average than actually this good”. So a player with seven goals against per hour in one game might be extremely bad, but it’s more likely that they were unlucky and are actually only “semi-bad”. Using an estimated percent error as a function of ice time, I rescale each players Z score (how many standard deviations they are from average), if the amount of time is less than some amount (where percentage error >100%) I just assume the player is average until I have better data. This means that good players who’ve missed a good chunk of the season I can’t really rate. For example, Gaborik has a negative score, which will improve if he gets more ice time.
Since the regression doesn’t care about individual scores, but the scores of all possible cross products I had to rescale every pair using the above logic. So if a pair doesn’t play much together, but got a ton of goals in the time I just assume it was all luck and give them an average number of goals. So this regression primarily looks at significant pairings and ignores the insignificant pairings. This also prevents the regression from blowing up in both directions and makes the results in a much smaller band.
A good/poor score can be the result of coaching usage, player confidence, ability, luck etc. This is not a definitive number telling you how good a player is at even strength, but rather attempts to explain how they have done, whether that’s an anomaly or not is a matter of opinion. So with the technical discussion over a short list, the rest is available at my site.
I’ve also been doing the same thing to my PP and SH data as a result the columns on my website are significantly different. A NETV score, which represents goal differential provided by a given player, using even strength, power play and penalty kill data. You can estimate winning percentage by (2.86+NETV)2/((2.86+NETV)2 + 2.862), which might be more intuitive to readers. PP+, PP-, SH+, SH- are functions of goals for and shots against and do not represent typical plus minus numbers, they attempt to credit the player who is responsible for the goal rather than all players equally.
+ (PP+ - PP- - PPavg)*PPhours/(0.15*Games)
+ (SH+ - SH- + SHavg)*SHhours/(0.15* Games)
I’m not quite satisfied with the constant used in the algorithm at this point to say these results are very good, but they are useful. All the NETV scores are on my website.
I want to do some more interesting analysis in the next week, so I’ll avoid dealing with my player rating system for a while, so I’ll keep these results for now. Not sure what topic I’ll cover next. It’s been a while since some of my more detailed better articles came out.