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.
Canucks
N | F | Lastname | V | 1 | H | SEDIN | 0.36 | 2 | D | SEDIN | 0.33 | 3 | M | NASLUND | 0.21 | 4 | M | OHLUND | 0.12 | 5 | K | BIEKSA | -0.03 | 6 | J | GREEN | -0.10 | 7 | S | SALO | -0.11 | 8 | M | CHOUINARD | -0.14 | 9 | B | MORRISON | -0.14 | 10 | T | LINDEN | -0.15 | 11 | A | BURROWS | -0.15 | 12 | J | BULIS | -0.23 | 13 | R | KESLER | -0.28 | 14 | T | PYATT | -0.29 | 15 | M | COOKE | -0.37 | 16 | L | KRAJICEK | -0.51 | 17 | W | MITCHELL | -0.66 |
|
Wild
N | F | Lastname | V | 1 | B | ROLSTON | 0.09 | 2 | K | CARNEY | 0.01 | 3 | S | VEILLEUX | 0.00 | 4 | M | SKOULA | 0.00 | 5 | M | PARRISH | -0.04 | 6 | T | WHITE | -0.10 | 7 | K | FOSTER | -0.18 | 8 | B | BURNS | -0.20 | 9 | P | BOUCHARD | -0.21 | 10 | P | DUPUIS | -0.25 | 11 | B | RADIVOJEVIC | -0.25 | 12 | K | JOHNSSON | -0.43 | 13 | M | KOIVU | -0.43 | 14 | P | DEMITRA | -0.50 | 15 | N | SCHULTZ | -0.51 | 16 | P | NUMMELIN | -0.65 |
|
Edmonton
N | F | Lastname | V | 1 | R | TORRES | 0.67 | 2 | J | STOLL | 0.40 | 3 | D | TJARNQVIST | 0.35 | 4 | F | PISANI | 0.35 | 5 | M | BERGERON | 0.26 | 6 | J | SMITH | 0.23 | 7 | M | GREENE | 0.15 | 8 | P | SYKORA | 0.07 | 9 | A | HEMSKY | 0.06 | 10 | R | SMYTH | 0.05 | 11 | S | STAIOS | -0.01 | 12 | B | WINCHESTER | -0.05 | 13 | P | THORESEN | -0.08 | 14 | S | HORCOFF | -0.10 | 15 | L | SMID | -0.12 | 16 | M | REASONER | -0.12 | 17 | J | LUPUL | -0.15 | 18 | T | PETERSEN | -0.43 |
|
Colorado
N | F | Lastname | V | 1 | K | KLEE | 0.61 | 2 | J | SAKIC | 0.47 | 3 | T | ARNASON | 0.38 | 4 | M | SVATOS | 0.33 | 5 | A | BRUNETTE | 0.30 | 6 | W | WOLSKI | 0.18 | 7 | J | LILES | 0.14 | 8 | B | MCLEAN | 0.12 | 9 | P | STASTNY | 0.09 | 10 | M | HEJDUK | 0.06 | 11 | O | VAANANEN | 0.06 | 12 | B | CLARK | -0.02 | 13 | B | RICHARDSON | -0.15 | 14 | I | LAPERRIERE | -0.15 | 15 | A | LAAKSONEN | -0.15 | 16 | P | BRISEBOIS | -0.17 | 17 | M | RYCROFT | -0.19 | 18 | K | SKRASTINS | -0.34 |
|
Flames
N | F | Lastname | V | 1 | J | IGINLA | 0.70 | 2 | R | WARRENER | 0.53 | 3 | D | LANGKOW | 0.52 | 4 | D | PHANEUF | 0.49 | 5 | A | TANGUAY | 0.41 | 6 | R | HAMRLIK | 0.36 | 7 | M | LOMBARDI | 0.32 | 8 | R | REGEHR | 0.23 | 9 | K | HUSELIUS | -0.12 | 10 | M | NILSON | -0.12 | 11 | B | RITCHIE | -0.23 | 12 | J | LUNDMARK | -0.23 | 13 | D | MCCARTY | -0.25 | 14 | C | KOBASEW | -0.29 | 15 | A | FERENCE | -0.31 | 16 | J | FRIESEN | -0.37 | 17 | T | AMONTE | -0.47 | 18 | A | ZYUZIN | -0.65 |
|
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.
NETV =
+ V
+ (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.
2 comments:
I think you have problems when the top 3 players for VAL are on the same team (Buffalo) and the top 3 players for NET are all from the same team (NYR). To me that says you are not isolating their contribution very well.
First off my algorithm will only give two players who play together different scores if their ice time not together is significant. If the biggest problem is that the top 5 players are wrong then I'd be happy, the goal wasn't to create a ranking system, but an evaluation system. The players at the top of the list are often there because of luck so I take the top players with a grain of salt.
However,
1. Buffalo has had some terrible even strength goal tending, but are ranked top 3 in goal differential.
2. Vanek is not on the same line as Briere and Pominville.
3. 85% of Pominville's ice time has been with Briere. There are about 3000 seconds of information of them apart (probably distributed amount 16 other players), even if they were with the same player there's 65% error on this data, that means a lot of regressing to the mean. In other words I lack sufficient data to consider which one is better so I choose to make them more similar.
4. That being said, Pominville's 4.9 +'s/HR I hope he gets ranked high. And I'm glad this high ranking for Pominville didn't effect Briere signifigantly (I'd hate to have Briere get a low offensive ranking because Pominville has done well)
New York NET scores:
1. Shanahan is there for completely different reasons than Jagr and Straka. Shanahan has spent some time on the PK and has had great results and as a result gets rewarded.
2. Shanahan and Straka are indistinguishable on the power play.
3. Straka and Jagr haven't spent enough time apart to get a good picture on who is producing results.
Conclusion: The number of priority isn't isolating player contribution, but estimating skill, there are times when that is impossible due to too much time together (Sedin's) that one is better off to give the two players the same score and let one subjectively determine who is driving the results.
Post a Comment