Points leaders -- accounting for Strength of Schedule
Moderators: Mitch Hawker, east hockey, karl(east)
Points leaders -- accounting for Strength of Schedule
You hear chatter about how Missy gets a bazillion points, but plays a weak schedule. Or the flip side, Missy would be a points leader but she plays a tough schedule. I fiddled with some numbers to adjust points by Strength of Schedule. I took the top 60 points leaders off the Hub yesterday (Jan 25), and the KRACH SOS AVG values (3rd column on the KRACH SOS sheet, also from Jan 25), and calculated two Adjusted Points indices.
First:
Adjusted Points Index = 50 * (Avg Pts per Game / AVG KRACH SOS). The factor of 50 is just to scale the numbers so they're in the low single digits--it does not affect rankings. If your daugther plays a tough schedule, she moved up in the rankings relative to the Hub's points leaders rank. Here's the top 60 points leaders, adjusted for SOS:
Player Team Adjusted Points Index
Amy Petersen MNTKA 5.6
Charly Dahlquist EDENPR 5.0
Kelly Pannek BSM 4.3
Dani Cameranesi BLAKE 4.0
Lisa Marvin WRRD 3.9
Taylor Williamson EDINA 3.8
Kayla Gardner WRRD 3.8
Kiersten Falck BLAINE 3.6
Nicole Schammel REDWNG 3.5
Katie Rooney BUFF 3.3
Emilie Brigham ANOKA 3.2
Brittany Wheeler BSM 3.0
Kate Flug RSVL 3.0
Corbin Boyd HPKNS 2.9
Caitlin Reilly BSM 2.9
Nina Rodgers HPKNS 2.9
Demi Gardner WRRD 2.9
Kate Schipper* BRECK 2.8
Amy Menke SHAK 2.7
Lauren Hespenheide SHAK 2.6
Lindsay Roethke BUFF 2.5
Sam Swanstrom BLAINE 2.5
Reagan Haley REDWNG 2.5
Lindsey Coleman BURNS 2.4
Christi Vetter LKVL-N 2.4
Karlie Lund BLAKE 2.4
Marissa Odell ARMCOO 2.4
Briita Nelson BURNS 2.3
Paige Skaja BURNS 2.3
Brianna Breiland CRKSTN 2.3
Dani Sibley NWRCTY 2.2
Kathryn Larson MNDSVW 2.2
Amy Schlagel BLAINE 2.2
Emma Terres ARMCOO 2.1
Emily Stegora REDWNG 2.0
Dana Rasmussen DODGE 2.0
Paige Haley REDWNG 2.0
Darby Dodds DODGE 1.9
Jessica Aney RCHCEN 1.9
Samantha Donovan IRON 1.8
Carly Moran WINONA 1.8
Haley Mack E.G.F. 1.7
Katherine Aney* RCHCEN 1.7
Emily Bergland T.R.F. 1.6
Rebekah Smith ORONO 1.6
Sylvia Marolt T.R.F. 1.6
CoCo Piche E.G.F. 1.5
Reilly Fawcett PCTHRM 1.5
Lindsay Paschke N. P. 1.5
Makayla Sterrett LUVRNE 1.3
Catie Skaja N. P. 1.3
Rachael Prozinski RVRLAK 1.3
Annie Pumper N-FLD 1.3
Emily Gunderson DODGE 1.3
Shelby Iverson ALEX 1.3
Taryn Juberien WASECA 1.2
Katy Fuller MPLS 1.2
Carley Grunewald AUSTIN 1.1
Maddie McCargar MKTOEA 1.0
Anna Anderson AlbLea 1.0
Second:
Adjusted Points Index2 = 1000 * Avg Pts per game / (AVG KRACH SOS)^2
Again, the factor of 1000 is just for scaling. The square term in the denominator gives stronger weight to SOS. Not sure which does a "fairer" job of adjusting for SOS, but if your daugther plays a tough schedule, she moved up in these rankings relative to the First method.
Here are the top 60 points leaders, in order of Adjusted Points Index2:
Player Team Points Index2
Amy Petersen MNTKA 6.6
Charly Dahlquist EDENPR 5.5
Taylor Williamson EDINA 3.5
Kelly Pannek BSM 2.3
Kiersten Falck BLAINE 1.9
Emilie Brigham ANOKA 1.9
Lisa Marvin WRRD 1.9
Kayla Gardner WRRD 1.8
Dani Cameranesi BLAKE 1.8
Kate Flug RSVL 1.7
Katie Rooney BUFF 1.7
Corbin Boyd HPKNS 1.6
Brittany Wheeler BSM 1.6
Nina Rodgers HPKNS 1.6
Caitlin Reilly BSM 1.5
Demi Gardner WRRD 1.4
Kate Schipper* BRECK 1.4
Sam Swanstrom BLAINE 1.3
Christi Vetter LKVL-N 1.3
Lindsey Coleman BURNS 1.3
Lindsay Roethke BUFF 1.3
Briita Nelson BURNS 1.2
Paige Skaja BURNS 1.2
Amy Menke SHAK 1.2
Marissa Odell ARMCOO 1.2
Nicole Schammel REDWNG 1.2
Lauren Hespenheide SHAK 1.2
Amy Schlagel BLAINE 1.2
Kathryn Larson MNDSVW 1.1
Emma Terres ARMCOO 1.1
Karlie Lund BLAKE 1.1
Dani Sibley NWRCTY 0.9
Reagan Haley REDWNG 0.8
Brianna Breiland CRKSTN 0.8
Samantha Donovan IRON 0.7
Emily Stegora REDWNG 0.7
Paige Haley REDWNG 0.7
Dana Rasmussen DODGE 0.6
Darby Dodds DODGE 0.6
Haley Mack E.G.F. 0.6
Emily Bergland T.R.F. 0.6
Sylvia Marolt T.R.F. 0.5
Rebekah Smith ORONO 0.5
CoCo Piche E.G.F. 0.5
Reilly Fawcett PCTHRM 0.5
Carly Moran WINONA 0.4
Jessica Aney RCHCEN 0.4
Lindsay Paschke N. P. 0.4
Katherine Aney* RCHCEN 0.4
Emily Gunderson DODGE 0.4
Catie Skaja N. P. 0.4
Rachael Prozinski RVRLAK 0.4
Shelby Iverson ALEX 0.4
Annie Pumper N-FLD 0.3
Katy Fuller MPLS 0.3
Carley Grunewald AUSTIN 0.3
Makayla Sterrett LUVRNE 0.2
Taryn Juberien WASECA 0.2
Maddie McCargar MKTOEA 0.2
Anna Anderson AlbLea 0.2
First:
Adjusted Points Index = 50 * (Avg Pts per Game / AVG KRACH SOS). The factor of 50 is just to scale the numbers so they're in the low single digits--it does not affect rankings. If your daugther plays a tough schedule, she moved up in the rankings relative to the Hub's points leaders rank. Here's the top 60 points leaders, adjusted for SOS:
Player Team Adjusted Points Index
Amy Petersen MNTKA 5.6
Charly Dahlquist EDENPR 5.0
Kelly Pannek BSM 4.3
Dani Cameranesi BLAKE 4.0
Lisa Marvin WRRD 3.9
Taylor Williamson EDINA 3.8
Kayla Gardner WRRD 3.8
Kiersten Falck BLAINE 3.6
Nicole Schammel REDWNG 3.5
Katie Rooney BUFF 3.3
Emilie Brigham ANOKA 3.2
Brittany Wheeler BSM 3.0
Kate Flug RSVL 3.0
Corbin Boyd HPKNS 2.9
Caitlin Reilly BSM 2.9
Nina Rodgers HPKNS 2.9
Demi Gardner WRRD 2.9
Kate Schipper* BRECK 2.8
Amy Menke SHAK 2.7
Lauren Hespenheide SHAK 2.6
Lindsay Roethke BUFF 2.5
Sam Swanstrom BLAINE 2.5
Reagan Haley REDWNG 2.5
Lindsey Coleman BURNS 2.4
Christi Vetter LKVL-N 2.4
Karlie Lund BLAKE 2.4
Marissa Odell ARMCOO 2.4
Briita Nelson BURNS 2.3
Paige Skaja BURNS 2.3
Brianna Breiland CRKSTN 2.3
Dani Sibley NWRCTY 2.2
Kathryn Larson MNDSVW 2.2
Amy Schlagel BLAINE 2.2
Emma Terres ARMCOO 2.1
Emily Stegora REDWNG 2.0
Dana Rasmussen DODGE 2.0
Paige Haley REDWNG 2.0
Darby Dodds DODGE 1.9
Jessica Aney RCHCEN 1.9
Samantha Donovan IRON 1.8
Carly Moran WINONA 1.8
Haley Mack E.G.F. 1.7
Katherine Aney* RCHCEN 1.7
Emily Bergland T.R.F. 1.6
Rebekah Smith ORONO 1.6
Sylvia Marolt T.R.F. 1.6
CoCo Piche E.G.F. 1.5
Reilly Fawcett PCTHRM 1.5
Lindsay Paschke N. P. 1.5
Makayla Sterrett LUVRNE 1.3
Catie Skaja N. P. 1.3
Rachael Prozinski RVRLAK 1.3
Annie Pumper N-FLD 1.3
Emily Gunderson DODGE 1.3
Shelby Iverson ALEX 1.3
Taryn Juberien WASECA 1.2
Katy Fuller MPLS 1.2
Carley Grunewald AUSTIN 1.1
Maddie McCargar MKTOEA 1.0
Anna Anderson AlbLea 1.0
Second:
Adjusted Points Index2 = 1000 * Avg Pts per game / (AVG KRACH SOS)^2
Again, the factor of 1000 is just for scaling. The square term in the denominator gives stronger weight to SOS. Not sure which does a "fairer" job of adjusting for SOS, but if your daugther plays a tough schedule, she moved up in these rankings relative to the First method.
Here are the top 60 points leaders, in order of Adjusted Points Index2:
Player Team Points Index2
Amy Petersen MNTKA 6.6
Charly Dahlquist EDENPR 5.5
Taylor Williamson EDINA 3.5
Kelly Pannek BSM 2.3
Kiersten Falck BLAINE 1.9
Emilie Brigham ANOKA 1.9
Lisa Marvin WRRD 1.9
Kayla Gardner WRRD 1.8
Dani Cameranesi BLAKE 1.8
Kate Flug RSVL 1.7
Katie Rooney BUFF 1.7
Corbin Boyd HPKNS 1.6
Brittany Wheeler BSM 1.6
Nina Rodgers HPKNS 1.6
Caitlin Reilly BSM 1.5
Demi Gardner WRRD 1.4
Kate Schipper* BRECK 1.4
Sam Swanstrom BLAINE 1.3
Christi Vetter LKVL-N 1.3
Lindsey Coleman BURNS 1.3
Lindsay Roethke BUFF 1.3
Briita Nelson BURNS 1.2
Paige Skaja BURNS 1.2
Amy Menke SHAK 1.2
Marissa Odell ARMCOO 1.2
Nicole Schammel REDWNG 1.2
Lauren Hespenheide SHAK 1.2
Amy Schlagel BLAINE 1.2
Kathryn Larson MNDSVW 1.1
Emma Terres ARMCOO 1.1
Karlie Lund BLAKE 1.1
Dani Sibley NWRCTY 0.9
Reagan Haley REDWNG 0.8
Brianna Breiland CRKSTN 0.8
Samantha Donovan IRON 0.7
Emily Stegora REDWNG 0.7
Paige Haley REDWNG 0.7
Dana Rasmussen DODGE 0.6
Darby Dodds DODGE 0.6
Haley Mack E.G.F. 0.6
Emily Bergland T.R.F. 0.6
Sylvia Marolt T.R.F. 0.5
Rebekah Smith ORONO 0.5
CoCo Piche E.G.F. 0.5
Reilly Fawcett PCTHRM 0.5
Carly Moran WINONA 0.4
Jessica Aney RCHCEN 0.4
Lindsay Paschke N. P. 0.4
Katherine Aney* RCHCEN 0.4
Emily Gunderson DODGE 0.4
Catie Skaja N. P. 0.4
Rachael Prozinski RVRLAK 0.4
Shelby Iverson ALEX 0.4
Annie Pumper N-FLD 0.3
Katy Fuller MPLS 0.3
Carley Grunewald AUSTIN 0.3
Makayla Sterrett LUVRNE 0.2
Taryn Juberien WASECA 0.2
Maddie McCargar MKTOEA 0.2
Anna Anderson AlbLea 0.2
Very interesting stuff, Bandy.
First, I would say to go beyond the top 60. E.g., Petersen is #1 on your list, but only #50 or so in total points. If you go to at least top 100 points (maybe even 200) leaders, Tonka's Bowman would likely be in top 10 of your list, as another example. Then, maybe only keep the top 50 or 60 based on your results and add another column to show actual points ranking, for comparison purposes.
Second, it's interesting that a lot of the "name" players and those with D1 scholarships have floated to the top. I suppose this lends credence to your methodology based on how these players are scouted and recruited by colleges.
Third, it doesn't give much credit to defensemen, but that's always an issue where numbers are concerned, since we tend to measure only goals and assists, so not much we can do unless we look at +/-.
Fourth, as I'm sure some will point out, is that it doesn't account for a host of other minor influencing factors. To me, those are indeed minor, as I think that your model gets to the crux of the issue. As with any model, it's only a less complex representation of the real world.
Good stuff, though; thanks for sharing.
First, I would say to go beyond the top 60. E.g., Petersen is #1 on your list, but only #50 or so in total points. If you go to at least top 100 points (maybe even 200) leaders, Tonka's Bowman would likely be in top 10 of your list, as another example. Then, maybe only keep the top 50 or 60 based on your results and add another column to show actual points ranking, for comparison purposes.
Second, it's interesting that a lot of the "name" players and those with D1 scholarships have floated to the top. I suppose this lends credence to your methodology based on how these players are scouted and recruited by colleges.
Third, it doesn't give much credit to defensemen, but that's always an issue where numbers are concerned, since we tend to measure only goals and assists, so not much we can do unless we look at +/-.
Fourth, as I'm sure some will point out, is that it doesn't account for a host of other minor influencing factors. To me, those are indeed minor, as I think that your model gets to the crux of the issue. As with any model, it's only a less complex representation of the real world.
Good stuff, though; thanks for sharing.
Thanks for comments. I will add the next 60 players & update this in a few days. I could include more columns, but it gets messy to look at on this forum. Would be nice to be able to post something like Hub, where it's sort-able by different columns.sinbin wrote:Very interesting stuff, Bandy.
First, I would say to go beyond the top 60. E.g., Petersen is #1 on your list, but only #50 or so in total points. If you go to at least top 100 points (maybe even 200) leaders, Tonka's Bowman would likely be in top 10 of your list, as another example. Then, maybe only keep the top 50 or 60 based on your results and add another column to show actual points ranking, for comparison purposes.
Second, it's interesting that a lot of the "name" players and those with D1 scholarships have floated to the top. I suppose this lends credence to your methodology based on how these players are scouted and recruited by colleges.
Third, it doesn't give much credit to defensemen, but that's always an issue where numbers are concerned, since we tend to measure only goals and assists, so not much we can do unless we look at +/-.
Fourth, as I'm sure some will point out, is that it doesn't account for a host of other minor influencing factors. To me, those are indeed minor, as I think that your model gets to the crux of the issue. As with any model, it's only a less complex representation of the real world.
Good stuff, though; thanks for sharing.
+/- is a good metric, but I think is useless on Hub because I don't think most teams enter these stats. It also doesn't account for SOS.
Agree, hard to say anything about the quality of a defenseman by any point-counting model, except +/-. How far a player advances in the Advanced 15, 16, 17 process probably beats any numerical / statistical model.
I'm interested in folks opinions of which algorithm best captures the 'best' offensive players in HS hockey this season, adjusting for SOS.
I played with my earlier post. The general equation for Adusted Points Index (API) is:
API = a * (Avg Pts per game) / (KRACH AVG SOS)^N.
For the exponent N in the denominator,
I tried models of N=0.75, N=1, and N=2, resulting in API0.75, API1, and API2.
Below is a list of the top 30 players for the N=1 model. I list Ranks (1=top scorer) for the three models, and also for the unweighted Avg Pts per game (which for you math fans is the N=0 model).
So, for example, Schammel (#1 in pts per game) drops to #6, #9, and #26 in the respective models. My gut feeling says the N=2 model punishes Schammel too much. Thoughts on best model???
Player Team Rank0.75 Rank1 Rank2 RankAvgPts
Amy Petersen MNTKA 1 1 1 39
Charly Dahlquist EDENPR 4 2 2 48
Kelly Pannek BSM 2 3 4 3
Dani Cameranesi BLAKE 3 4 9 2
Lisa Marvin WRRD 5 5 7 5
Taylor Williamson EDINA 10 6 3 58
Kayla Gardner WRRD 7 7 8 6
Kiersten Falck BLAINE 8 8 5 11
Nicole Schammel REDWNG 6 9 26 1
Katie Rooney BUFF 9 10 11 14
Emilie Brigham ANOKA 11 11 6 30
Brittany Wheeler BSM 12 12 13 21
Kate Flug RSVL 13 13 10 26
Corbin Boyd HPKNS 15 14 12 29
Caitlin Reilly BSM 16 15 15 24
Nina Rodgers HPKNS 17 16 14 30
Demi Gardner WRRD 14 17 16 19
Kate Schipper* BRECK 18 18 17 22
Amy Menke SHAK 19 19 24 16
Lauren Hespenheide SHAK 21 20 27 18
Lindsay Roethke BUFF 22 21 21 33
Sam Swanstrom BLAINE 25 22 18 44
Reagan Haley REDWNG 20 23 33 10
Lindsey Coleman BURNS 26 24 20 48
Christi Vetter LKVL-N 28 25 19 52
Karlie Lund BLAKE 24 26 31 25
Marissa Odell ARMCOO 27 27 25 42
Briita Nelson BURNS 31 28 22 54
Paige Skaja BURNS 31 28 22 54
Brianna Breiland CRKSTN 23 30 34 13
I played with my earlier post. The general equation for Adusted Points Index (API) is:
API = a * (Avg Pts per game) / (KRACH AVG SOS)^N.
For the exponent N in the denominator,
I tried models of N=0.75, N=1, and N=2, resulting in API0.75, API1, and API2.
Below is a list of the top 30 players for the N=1 model. I list Ranks (1=top scorer) for the three models, and also for the unweighted Avg Pts per game (which for you math fans is the N=0 model).
So, for example, Schammel (#1 in pts per game) drops to #6, #9, and #26 in the respective models. My gut feeling says the N=2 model punishes Schammel too much. Thoughts on best model???
Player Team Rank0.75 Rank1 Rank2 RankAvgPts
Amy Petersen MNTKA 1 1 1 39
Charly Dahlquist EDENPR 4 2 2 48
Kelly Pannek BSM 2 3 4 3
Dani Cameranesi BLAKE 3 4 9 2
Lisa Marvin WRRD 5 5 7 5
Taylor Williamson EDINA 10 6 3 58
Kayla Gardner WRRD 7 7 8 6
Kiersten Falck BLAINE 8 8 5 11
Nicole Schammel REDWNG 6 9 26 1
Katie Rooney BUFF 9 10 11 14
Emilie Brigham ANOKA 11 11 6 30
Brittany Wheeler BSM 12 12 13 21
Kate Flug RSVL 13 13 10 26
Corbin Boyd HPKNS 15 14 12 29
Caitlin Reilly BSM 16 15 15 24
Nina Rodgers HPKNS 17 16 14 30
Demi Gardner WRRD 14 17 16 19
Kate Schipper* BRECK 18 18 17 22
Amy Menke SHAK 19 19 24 16
Lauren Hespenheide SHAK 21 20 27 18
Lindsay Roethke BUFF 22 21 21 33
Sam Swanstrom BLAINE 25 22 18 44
Reagan Haley REDWNG 20 23 33 10
Lindsey Coleman BURNS 26 24 20 48
Christi Vetter LKVL-N 28 25 19 52
Karlie Lund BLAKE 24 26 31 25
Marissa Odell ARMCOO 27 27 25 42
Briita Nelson BURNS 31 28 22 54
Paige Skaja BURNS 31 28 22 54
Brianna Breiland CRKSTN 23 30 34 13
-
- Posts: 6132
- Joined: Thu Jun 05, 2003 2:33 pm
- Location: Inver Grove Heights, MN
- Contact:
Back 5+ years or so we tried this and I think we just did the simplest form (N=0). It worked well enough, but I believe there was a suggestion to go a step beyond and actually look at the teams that the player was gaining specific points against.
The reason for this was that some coaches took their best off the ice or score controlled when a game was well over early on. Others didn't. The point was maybe some of those players that were putting up big numbers against weak opponents were also putting up decent numbers against solid ones (and subsequently somewhat unfairly penalized by methods that didn't look at game-by-game scaling).
The problem there was how do you determine the value of a point against KRACH ranked team #1 vs say #2 and so on. Is a goal worth twice as much? Probably not. So then to you break it down into points being worth certain values based on team groupings (e.g top 10, then 11-20, and so on).
Complicating things a bit more... do you consider the ranking of the team they play on in the equation? And so too then the other players on their team with high point totals, etc.? (this gets at the impact of their supporting cast quality).
Not sure - but the easiest and quickest is probably the way explained above with N=0. It does a pretty good job and could probably be bronken out by position to help see those D rise to the top of their respective grouping instead of mixnig in with the Fs.
The reason for this was that some coaches took their best off the ice or score controlled when a game was well over early on. Others didn't. The point was maybe some of those players that were putting up big numbers against weak opponents were also putting up decent numbers against solid ones (and subsequently somewhat unfairly penalized by methods that didn't look at game-by-game scaling).
The problem there was how do you determine the value of a point against KRACH ranked team #1 vs say #2 and so on. Is a goal worth twice as much? Probably not. So then to you break it down into points being worth certain values based on team groupings (e.g top 10, then 11-20, and so on).
Complicating things a bit more... do you consider the ranking of the team they play on in the equation? And so too then the other players on their team with high point totals, etc.? (this gets at the impact of their supporting cast quality).
Not sure - but the easiest and quickest is probably the way explained above with N=0. It does a pretty good job and could probably be bronken out by position to help see those D rise to the top of their respective grouping instead of mixnig in with the Fs.
GShockeyfan makes a good point about adjusting for the specific teams that were scored upon. This stuff is way over my head but it seems like you could have a fairly strong schedule but only score against the weaker teams. Perhaps there is a simple way of throwing out all points against teams below a certain SOS and then recalculating. I suspect that is how the college scouts would look at it. Sounds like a lot of work though.
Agree. I actually was thinking that calculating a Points Index for each game, based on opponent's SOS rating, then taking an average of that would be the ideal way to go. With a spreadsheet program or stats package, it wouldn't be hard. The hard part for me would be compiling all the data in a useable format.Nimrod wrote:GShockeyfan makes a good point about adjusting for the specific teams that were scored upon. This stuff is way over my head but it seems like you could have a fairly strong schedule but only score against the weaker teams. Perhaps there is a simple way of throwing out all points against teams below a certain SOS and then recalculating. I suspect that is how the college scouts would look at it. Sounds like a lot of work though.
It's way easier to pull the points leaders off of Hub, and pull the SOS off of KRACH, and use the aggregated stats for the season to calculate the index. It has pitfalls, but I think it does a decent job especially this late in the season.
As for Defense, I think it's a perennial problem. Good D are worth their weight in gold. Focus on points doesn't capture their value. I think any defensive players showing up in the top 60 points leaders is a feather in their cap.
I like ghshockeyfan's suggestion to simply divide avg pts per game by KRACH AVG SOS value (rather than the N=0.75 or N=2 models). There's a host of nuances that this simple model does not capture, but I agree w/ sinbin's observation that some of the most highly recruited, and successful Advanced / High Performance players rose toward the top when accounting for SOS. It seems to be doing a good job, overall.
One nuance this doesn't capture is penalty minutes. No idea if the PIM stats on Hub are accurate, but some of the top scorers have 0 - 4 PIM, while others have considerably more. I played around with this, and came up w/ the following:
PIM-adjusted total points = total points - (0.1 * PIM). So if a player has 40 PIM, 0.1 * 40 = 4, so I subtract 4 from the player's total points before calculating average pts per game. My gut feeling is that this seems like about the right penalty. If typical power play success rate is about 20%, then 0.1 X 2PIM = 0.2, or 20%. The net effect on rankings is minor, but obviously if one chose a bigger factor here, then highly penalized players would drop lower.
Stay tuned...
-
- Posts: 6132
- Joined: Thu Jun 05, 2003 2:33 pm
- Location: Inver Grove Heights, MN
- Contact:
Ideally we'd have a points per minute played sort of stat, and I believe the NHL and College teams do this now (and have for years) and probably scale it by the length of an average game to get something more meaningful without many decimal places.
I think you're on to a real good formula to start and I agree that it may not be worth the added work of going per game per player - but once set-up in a stats package, excel, etc. it would be a neat tool.
I think you're on to a real good formula to start and I agree that it may not be worth the added work of going per game per player - but once set-up in a stats package, excel, etc. it would be a neat tool.
KRAPPI scores for top 60 points leaders, MN Girls HS Hockey, as of 1/25/2013. KRAPPI = Krach-Adjusted Points and Penalty Index.
KRAPPI = 50* (ppg_PIMadjusted)/(KRACH AVG SOS),
where ppg_PIMadjusted = (Total Points - [0.1*PIM])/games
Will update in a few days...
Player Team Avg Pts PtsPerGame_PIMadjusted KRAPPI
Amy Petersen MNTKA 1.90 1.90 5.6
Charly Dahlquist EDENPR 1.82 1.64 4.5
Kelly Pannek BSM 3.27 3.27 4.3
Dani Cameranesi BLAKE 3.65 3.56 3.9
Lisa Marvin WRRD 3.20 3.18 3.9
Kayla Gardner WRRD 3.10 2.98 3.6
Taylor Williamson EDINA 1.64 1.54 3.6
Nicole Schammel REDWNG 4.09 4.02 3.4
Kiersten Falck BLAINE 2.68 2.55 3.4
Katie Rooney BUFF 2.64 2.58 3.2
Emilie Brigham ANOKA 2.10 2.09 3.1
Brittany Wheeler BSM 2.30 2.28 3.0
Kate Flug RSVL 2.14 2.09 3.0
Corbin Boyd HPKNS 2.13 2.13 2.9
Demi Gardner WRRD 2.35 2.30 2.8
Caitlin Reilly BSM 2.20 2.12 2.8
Nina Rodgers HPKNS 2.10 2.01 2.8
Kate Schipper* BRECK 2.28 2.23 2.7
Amy Menke SHAK 2.40 2.38 2.7
Lauren Hespenheide SHAK 2.36 2.23 2.5
Lindsay Roethke BUFF 2.00 1.97 2.5
Reagan Haley REDWNG 2.91 2.84 2.4
Lindsey Coleman BURNS 1.82 1.80 2.4
Karlie Lund BLAKE 2.17 2.16 2.4
Christi Vetter LKVL-N 1.76 1.63 2.2
Briita Nelson BURNS 1.73 1.68 2.2
Paige Skaja BURNS 1.73 1.67 2.2
Marissa Odell ARMCOO 1.89 1.75 2.2
Brianna Breiland CRKSTN 2.67 2.58 2.2
Dani Sibley NWRCTY 2.14 2.06 2.2
Sam Swanstrom BLAINE 1.86 1.61 2.2
Kathryn Larson MNDSVW 1.86 1.78 2.1
Emma Terres ARMCOO 1.68 1.60 2.0
Dana Rasmussen DODGE 2.68 2.60 2.0
Emily Stegora REDWNG 2.39 2.29 1.9
Amy Schlagel BLAINE 1.64 1.40 1.9
Jessica Aney RCHCEN 3.23 3.23 1.9
Samantha Donovan IRON 1.96 1.94 1.8
Darby Dodds DODGE 2.52 2.42 1.8
Paige Haley REDWNG 2.35 2.11 1.8
Carly Moran WINONA 2.95 2.91 1.8
Katherine Aney* RCHCEN 2.93 2.93 1.7
Haley Mack E.G.F. 2.09 2.02 1.7
Emily Bergland T.R.F. 1.95 1.89 1.6
Rebekah Smith ORONO 1.95 1.85 1.5
CoCo Piche E.G.F. 1.86 1.80 1.5
Lindsay Paschke N. P. 2.14 2.10 1.5
Reilly Fawcett PCTHRM 1.90 1.83 1.5
Sylvia Marolt T.R.F. 1.90 1.71 1.4
Makayla Sterrett LUVRNE 3.00 2.97 1.3
Catie Skaja N. P. 1.91 1.85 1.3
Rachael Prozinski RVRLAK 1.81 1.77 1.3
Shelby Iverson ALEX 1.76 1.75 1.3
Annie Pumper N-FLD 1.86 1.78 1.2
Emily Gunderson DODGE 1.68 1.57 1.2
Taryn Juberien WASECA 2.26 2.13 1.1
Carley Grunewald AUSTIN 1.95 1.79 1.1
Katy Fuller MPLS 1.87 1.67 1.0
Maddie McCargar MKTOEA 1.81 1.66 0.9
Anna Anderson AlbLea 1.64 1.55 0.9
KRAPPI = 50* (ppg_PIMadjusted)/(KRACH AVG SOS),
where ppg_PIMadjusted = (Total Points - [0.1*PIM])/games
Will update in a few days...
Player Team Avg Pts PtsPerGame_PIMadjusted KRAPPI
Amy Petersen MNTKA 1.90 1.90 5.6
Charly Dahlquist EDENPR 1.82 1.64 4.5
Kelly Pannek BSM 3.27 3.27 4.3
Dani Cameranesi BLAKE 3.65 3.56 3.9
Lisa Marvin WRRD 3.20 3.18 3.9
Kayla Gardner WRRD 3.10 2.98 3.6
Taylor Williamson EDINA 1.64 1.54 3.6
Nicole Schammel REDWNG 4.09 4.02 3.4
Kiersten Falck BLAINE 2.68 2.55 3.4
Katie Rooney BUFF 2.64 2.58 3.2
Emilie Brigham ANOKA 2.10 2.09 3.1
Brittany Wheeler BSM 2.30 2.28 3.0
Kate Flug RSVL 2.14 2.09 3.0
Corbin Boyd HPKNS 2.13 2.13 2.9
Demi Gardner WRRD 2.35 2.30 2.8
Caitlin Reilly BSM 2.20 2.12 2.8
Nina Rodgers HPKNS 2.10 2.01 2.8
Kate Schipper* BRECK 2.28 2.23 2.7
Amy Menke SHAK 2.40 2.38 2.7
Lauren Hespenheide SHAK 2.36 2.23 2.5
Lindsay Roethke BUFF 2.00 1.97 2.5
Reagan Haley REDWNG 2.91 2.84 2.4
Lindsey Coleman BURNS 1.82 1.80 2.4
Karlie Lund BLAKE 2.17 2.16 2.4
Christi Vetter LKVL-N 1.76 1.63 2.2
Briita Nelson BURNS 1.73 1.68 2.2
Paige Skaja BURNS 1.73 1.67 2.2
Marissa Odell ARMCOO 1.89 1.75 2.2
Brianna Breiland CRKSTN 2.67 2.58 2.2
Dani Sibley NWRCTY 2.14 2.06 2.2
Sam Swanstrom BLAINE 1.86 1.61 2.2
Kathryn Larson MNDSVW 1.86 1.78 2.1
Emma Terres ARMCOO 1.68 1.60 2.0
Dana Rasmussen DODGE 2.68 2.60 2.0
Emily Stegora REDWNG 2.39 2.29 1.9
Amy Schlagel BLAINE 1.64 1.40 1.9
Jessica Aney RCHCEN 3.23 3.23 1.9
Samantha Donovan IRON 1.96 1.94 1.8
Darby Dodds DODGE 2.52 2.42 1.8
Paige Haley REDWNG 2.35 2.11 1.8
Carly Moran WINONA 2.95 2.91 1.8
Katherine Aney* RCHCEN 2.93 2.93 1.7
Haley Mack E.G.F. 2.09 2.02 1.7
Emily Bergland T.R.F. 1.95 1.89 1.6
Rebekah Smith ORONO 1.95 1.85 1.5
CoCo Piche E.G.F. 1.86 1.80 1.5
Lindsay Paschke N. P. 2.14 2.10 1.5
Reilly Fawcett PCTHRM 1.90 1.83 1.5
Sylvia Marolt T.R.F. 1.90 1.71 1.4
Makayla Sterrett LUVRNE 3.00 2.97 1.3
Catie Skaja N. P. 1.91 1.85 1.3
Rachael Prozinski RVRLAK 1.81 1.77 1.3
Shelby Iverson ALEX 1.76 1.75 1.3
Annie Pumper N-FLD 1.86 1.78 1.2
Emily Gunderson DODGE 1.68 1.57 1.2
Taryn Juberien WASECA 2.26 2.13 1.1
Carley Grunewald AUSTIN 1.95 1.79 1.1
Katy Fuller MPLS 1.87 1.67 1.0
Maddie McCargar MKTOEA 1.81 1.66 0.9
Anna Anderson AlbLea 1.64 1.55 0.9
-
- Posts: 1366
- Joined: Thu Mar 11, 2004 7:16 pm
- Location: St. Paul, MN
Brandy said:
Anyway, excellent idea Brandy. Thank you.
Unless with D's you could somehow use the +/- equation? I'm sure that doesn't exactly fit either as a lesser player might benefit more from a stronger player on their line.As for Defense, I think it's a perennial problem. Good D are worth their weight in gold. Focus on points doesn't capture their value. I think any defensive players showing up in the top 60 points leaders is a feather in their cap.
Anyway, excellent idea Brandy. Thank you.
I can splash in the rink puddles!
KRAPPI scores
Updated 27 January 2013.
Pulled top 90 points leaders from Hub, and today's KRACH SOS data. Here are the top 90, in order of decreasing KRAPPI score. KRAPPI = Krach-Adjusted Points and Penalty Index (see my earlier post from today for a KRAPPI definition). KRAPPIest players at the top.
sinbin was correct -- Laura Bowman catapulted to the #2 spot. Angie Heppelmann & Megan Wölfe also catapult pretty high on the list (these players ranked 61-90 in points, so I didn't include them in the 25 January version).
Player | Team | Avg Pts | PtsPerGame_PIMadjusted | KRAPPI
Amy Petersen MNTKA 1.95 1.95 6.1
Laura Bowman MNTKA 1.71 1.69 5.2
Kelly Pannek BSM 3.29 3.29 4.3
Charly Dahlquist EDENPR 1.78 1.61 4.2
Angie Heppelmann EDENPR 1.52 1.45 3.8
Lisa Marvin WRRD 3.14 3.12 3.7
Taylor Williamson EDINA 1.57 1.47 3.6
Dani Cameranesi BLAKE 3.45 3.38 3.6
Kayla Gardner WRRD 3.05 2.91 3.5
Nicole Schammel REDWNG 4.09 4.02 3.4
Kiersten Falck BLAINE 2.7 2.57 3.3
Emilie Brigham ANOKA 2.14 2.13 3.2
Katie Rooney BUFF 2.52 2.47 3.2
Corbin Boyd HPKNS 2.21 2.20 3.1
Brittany Wheeler BSM 2.32 2.30 3.0
Megan Wolfe EAGAN 2.12 2.05 2.9
Nina Rodgers HPKNS 2.14 2.05 2.9
Caitlin Reilly BSM 2.32 2.24 2.9
Kate Flug RSVL 2.09 2.04 2.9
Kate Schipper* BRECK 2.32 2.27 2.8
Amy Menke SHAK 2.43 2.40 2.8
Lauren Hespenheide SHAK 2.39 2.25 2.6
Demi Gardner WRRD 2.23 2.16 2.6
Lindsay Roethke BUFF 1.96 1.92 2.5
Kaitlin Storo CHASKA 1.68 1.61 2.4
Reagan Haley REDWNG 2.91 2.84 2.4
Lindsey Coleman BURNS 1.83 1.81 2.4
Blair Parent ANOKA 1.65 1.54 2.3
Briita Nelson BURNS 1.78 1.73 2.3
Christi Vetter LKVL-N 1.77 1.64 2.3
Marissa Odell ARMCOO 1.9 1.77 2.3
Kelsey Cline BJEFF 1.59 1.52 2.3
Alexis Joyce LKVL-N 1.74 1.61 2.3
Mikayla Goodin ANDVR 1.68 1.65 2.2
Dani Sibley NWRCTY 2.18 2.09 2.2
Brianna Breiland CRKSTN 2.75 2.64 2.2
Paige Skaja BURNS 1.7 1.63 2.2
Karlie Lund BLAKE 2.05 2.03 2.1
Kathryn Larson MNDSVW 1.83 1.74 2.1
Emma Terres ARMCOO 1.7 1.62 2.1
Sam Swanstrom BLAINE 1.87 1.63 2.1
Dani Sadek LKVL-N 1.52 1.47 2.1
Sierra Hanowski WRRD 1.68 1.65 2.0
Dana Rasmussen DODGE 2.61 2.52 2.0
Emily Stegora REDWNG 2.39 2.29 1.9
Katie Swanstrom BLAINE 1.61 1.48 1.9
Bella Sutton MNDSVW 1.61 1.55 1.9
Kiki Radke HASTNG 1.59 1.47 1.9
Amy Schlagel BLAINE 1.65 1.43 1.8
Darby Dodds DODGE 2.45 2.35 1.8
Jessica Aney RCHCEN 3.13 3.13 1.8
Lynn Astrup WRRD 1.59 1.52 1.8
Paige Haley REDWNG 2.35 2.11 1.8
Samantha Donovan IRON 2 1.98 1.8
Riley Viner SSP 1.68 1.65 1.8
Carly Moran WINONA 2.95 2.91 1.7
Jordan McLaughlin GRG 1.55 1.53 1.7
Haley Mack E.G.F. 2.13 2.07 1.6
Katherine Aney* RCHCEN 2.75 2.75 1.6
Emily Bergland T.R.F. 1.95 1.89 1.6
Lauren Wilcox SSP 1.5 1.47 1.6
Rebekah Smith ORONO 1.91 1.80 1.5
Reilly Fawcett PCTHRM 1.95 1.87 1.5
Lindsay Paschke N. P. 2.17 2.14 1.5
Sylvia Marolt T.R.F. 1.95 1.76 1.5
CoCo Piche E.G.F. 1.91 1.84 1.4
Karleigh Wolkerstorfer BMDJ 1.62 1.58 1.4
Brandi Malwitz T.R.F. 1.71 1.65 1.4
Rachael Prozinski RVRLAK 2 1.96 1.4
Alex Toupal IRON 1.5 1.48 1.3
Makayla Sterrett LUVRNE 3 2.97 1.3
Catie Skaja N. P. 1.96 1.90 1.3
Jessica Nkhata MOUND 1.7 1.62 1.3
Shelby Iverson ALEX 1.77 1.76 1.3
Annie Pumper N-FLD 1.86 1.78 1.2
Brittany Sticha N. P. 1.76 1.74 1.2
Taryn Juberien WASECA 2.4 2.27 1.2
Emily Gunderson DODGE 1.61 1.49 1.1
Carley Grunewald AUSTIN 1.95 1.79 1.1
Katy Fuller MPLS 1.83 1.64 1.1
Lexi Holman SSR 1.57 1.43 1.0
Dani Kocina N. P. 1.48 1.47 1.0
Rebekah Kolstad MKTOEA 1.84 1.69 1.0
Brook Schugel N.U. 1.71 1.67 0.9
Maddie McCargar MKTOEA 1.81 1.66 0.9
Sam Macken RCH JM 1.65 1.63 0.9
Hannah Savelkoul AlbLea 1.61 1.59 0.9
Brittany Denn N.U. 1.67 1.63 0.9
Anna Anderson AlbLea 1.65 1.57 0.9
Frankie Mickelson RCHCEN 1.48 1.46 0.8
Pulled top 90 points leaders from Hub, and today's KRACH SOS data. Here are the top 90, in order of decreasing KRAPPI score. KRAPPI = Krach-Adjusted Points and Penalty Index (see my earlier post from today for a KRAPPI definition). KRAPPIest players at the top.

sinbin was correct -- Laura Bowman catapulted to the #2 spot. Angie Heppelmann & Megan Wölfe also catapult pretty high on the list (these players ranked 61-90 in points, so I didn't include them in the 25 January version).
Player | Team | Avg Pts | PtsPerGame_PIMadjusted | KRAPPI
Amy Petersen MNTKA 1.95 1.95 6.1
Laura Bowman MNTKA 1.71 1.69 5.2
Kelly Pannek BSM 3.29 3.29 4.3
Charly Dahlquist EDENPR 1.78 1.61 4.2
Angie Heppelmann EDENPR 1.52 1.45 3.8
Lisa Marvin WRRD 3.14 3.12 3.7
Taylor Williamson EDINA 1.57 1.47 3.6
Dani Cameranesi BLAKE 3.45 3.38 3.6
Kayla Gardner WRRD 3.05 2.91 3.5
Nicole Schammel REDWNG 4.09 4.02 3.4
Kiersten Falck BLAINE 2.7 2.57 3.3
Emilie Brigham ANOKA 2.14 2.13 3.2
Katie Rooney BUFF 2.52 2.47 3.2
Corbin Boyd HPKNS 2.21 2.20 3.1
Brittany Wheeler BSM 2.32 2.30 3.0
Megan Wolfe EAGAN 2.12 2.05 2.9
Nina Rodgers HPKNS 2.14 2.05 2.9
Caitlin Reilly BSM 2.32 2.24 2.9
Kate Flug RSVL 2.09 2.04 2.9
Kate Schipper* BRECK 2.32 2.27 2.8
Amy Menke SHAK 2.43 2.40 2.8
Lauren Hespenheide SHAK 2.39 2.25 2.6
Demi Gardner WRRD 2.23 2.16 2.6
Lindsay Roethke BUFF 1.96 1.92 2.5
Kaitlin Storo CHASKA 1.68 1.61 2.4
Reagan Haley REDWNG 2.91 2.84 2.4
Lindsey Coleman BURNS 1.83 1.81 2.4
Blair Parent ANOKA 1.65 1.54 2.3
Briita Nelson BURNS 1.78 1.73 2.3
Christi Vetter LKVL-N 1.77 1.64 2.3
Marissa Odell ARMCOO 1.9 1.77 2.3
Kelsey Cline BJEFF 1.59 1.52 2.3
Alexis Joyce LKVL-N 1.74 1.61 2.3
Mikayla Goodin ANDVR 1.68 1.65 2.2
Dani Sibley NWRCTY 2.18 2.09 2.2
Brianna Breiland CRKSTN 2.75 2.64 2.2
Paige Skaja BURNS 1.7 1.63 2.2
Karlie Lund BLAKE 2.05 2.03 2.1
Kathryn Larson MNDSVW 1.83 1.74 2.1
Emma Terres ARMCOO 1.7 1.62 2.1
Sam Swanstrom BLAINE 1.87 1.63 2.1
Dani Sadek LKVL-N 1.52 1.47 2.1
Sierra Hanowski WRRD 1.68 1.65 2.0
Dana Rasmussen DODGE 2.61 2.52 2.0
Emily Stegora REDWNG 2.39 2.29 1.9
Katie Swanstrom BLAINE 1.61 1.48 1.9
Bella Sutton MNDSVW 1.61 1.55 1.9
Kiki Radke HASTNG 1.59 1.47 1.9
Amy Schlagel BLAINE 1.65 1.43 1.8
Darby Dodds DODGE 2.45 2.35 1.8
Jessica Aney RCHCEN 3.13 3.13 1.8
Lynn Astrup WRRD 1.59 1.52 1.8
Paige Haley REDWNG 2.35 2.11 1.8
Samantha Donovan IRON 2 1.98 1.8
Riley Viner SSP 1.68 1.65 1.8
Carly Moran WINONA 2.95 2.91 1.7
Jordan McLaughlin GRG 1.55 1.53 1.7
Haley Mack E.G.F. 2.13 2.07 1.6
Katherine Aney* RCHCEN 2.75 2.75 1.6
Emily Bergland T.R.F. 1.95 1.89 1.6
Lauren Wilcox SSP 1.5 1.47 1.6
Rebekah Smith ORONO 1.91 1.80 1.5
Reilly Fawcett PCTHRM 1.95 1.87 1.5
Lindsay Paschke N. P. 2.17 2.14 1.5
Sylvia Marolt T.R.F. 1.95 1.76 1.5
CoCo Piche E.G.F. 1.91 1.84 1.4
Karleigh Wolkerstorfer BMDJ 1.62 1.58 1.4
Brandi Malwitz T.R.F. 1.71 1.65 1.4
Rachael Prozinski RVRLAK 2 1.96 1.4
Alex Toupal IRON 1.5 1.48 1.3
Makayla Sterrett LUVRNE 3 2.97 1.3
Catie Skaja N. P. 1.96 1.90 1.3
Jessica Nkhata MOUND 1.7 1.62 1.3
Shelby Iverson ALEX 1.77 1.76 1.3
Annie Pumper N-FLD 1.86 1.78 1.2
Brittany Sticha N. P. 1.76 1.74 1.2
Taryn Juberien WASECA 2.4 2.27 1.2
Emily Gunderson DODGE 1.61 1.49 1.1
Carley Grunewald AUSTIN 1.95 1.79 1.1
Katy Fuller MPLS 1.83 1.64 1.1
Lexi Holman SSR 1.57 1.43 1.0
Dani Kocina N. P. 1.48 1.47 1.0
Rebekah Kolstad MKTOEA 1.84 1.69 1.0
Brook Schugel N.U. 1.71 1.67 0.9
Maddie McCargar MKTOEA 1.81 1.66 0.9
Sam Macken RCH JM 1.65 1.63 0.9
Hannah Savelkoul AlbLea 1.61 1.59 0.9
Brittany Denn N.U. 1.67 1.63 0.9
Anna Anderson AlbLea 1.65 1.57 0.9
Frankie Mickelson RCHCEN 1.48 1.46 0.8
I'm a little bugged by the simple N=1 exponent model. I think it overweights Minnetonka, and punishes teams with weaker schedules too much. It also ranks Cameranesi at #8 on the list--I'd question any model that doesn't have her close to the top.
If you've seen a lot of these players through the season, and in any extracurricular stuff (Fall Elite league, Advanced / Select / HP, etc.), I'm curious if you think today's model (described below) does a better job of ranking the top scorers while adjusting for SOS.
I wouldn't get wrapped around the axle if a player is 1 or 2 places off in the ranked list, compared to where you think she should be. But in general, which list does a better job of putting players in the right ballpark as far as where they rank in offensive prowess? This one, or yesterday's?
Math notes: The range of KRACH AVG SOS within the top 90 scorers is ~16 (Minnetonka) to 112 (Luverne). I.e., almost 10-fold difference between top and bottom. This REALLY rewards Mtka, while REALLY punishing lower-KRACH SOS teams. If you take the square root (KRACH^0.5), the range is about 4 to 10.5, a 2.6-fold difference between top and bottom. So, the KRACH adjustment with a square root (N=0.5 model) is not as extreme of an adjustment.
Here's the top 30 KRAPPIest players, 1/27 data, using the N=0.5 model.
Player | Team | Avg Pts | PtsPerGame_PIMadjusted | KRAPPI_0.5model
Kelly Pannek BSM 3.29 3.29 5.3
Nicole Schammel REDWNG 4.09 4.02 5.2
Dani Cameranesi BLAKE 3.45 3.38 4.9
Amy Petersen MNTKA 1.95 1.95 4.9
Lisa Marvin WRRD 3.14 3.12 4.8
Kayla Gardner WRRD 3.05 2.91 4.5
Laura Bowman MNTKA 1.71 1.69 4.2
Kiersten Falck BLAINE 2.7 2.57 4.1
Katie Rooney BUFF 2.52 2.47 4.0
Reagan Haley REDWNG 2.91 2.84 3.7
Corbin Boyd HPKNS 2.21 2.20 3.7
Brittany Wheeler BSM 2.32 2.30 3.7
Emilie Brigham ANOKA 2.14 2.13 3.7
Charly Dahlquist EDENPR 1.78 1.61 3.7
Amy Menke SHAK 2.43 2.40 3.6
Caitlin Reilly BSM 2.32 2.24 3.6
Kate Schipper* BRECK 2.32 2.27 3.6
Megan Wolfe EAGAN 2.12 2.05 3.5
Nina Rodgers HPKNS 2.14 2.05 3.5
Kate Flug RSVL 2.09 2.04 3.4
Lauren Hespenheide SHAK 2.39 2.25 3.4
Brianna Breiland CRKSTN 2.75 2.64 3.4
Jessica Aney RCHCEN 3.13 3.13 3.4
Demi Gardner WRRD 2.23 2.16 3.3
Angie Heppelmann EDENPR 1.52 1.45 3.3
Taylor Williamson EDINA 1.57 1.47 3.3
Carly Moran WINONA 2.95 2.91 3.2
Dana Rasmussen DODGE 2.61 2.52 3.1
Lindsay Roethke BUFF 1.96 1.92 3.1
Dani Sibley NWRCTY 2.18 2.09 3.0
If you've seen a lot of these players through the season, and in any extracurricular stuff (Fall Elite league, Advanced / Select / HP, etc.), I'm curious if you think today's model (described below) does a better job of ranking the top scorers while adjusting for SOS.
I wouldn't get wrapped around the axle if a player is 1 or 2 places off in the ranked list, compared to where you think she should be. But in general, which list does a better job of putting players in the right ballpark as far as where they rank in offensive prowess? This one, or yesterday's?
Math notes: The range of KRACH AVG SOS within the top 90 scorers is ~16 (Minnetonka) to 112 (Luverne). I.e., almost 10-fold difference between top and bottom. This REALLY rewards Mtka, while REALLY punishing lower-KRACH SOS teams. If you take the square root (KRACH^0.5), the range is about 4 to 10.5, a 2.6-fold difference between top and bottom. So, the KRACH adjustment with a square root (N=0.5 model) is not as extreme of an adjustment.
Here's the top 30 KRAPPIest players, 1/27 data, using the N=0.5 model.
Player | Team | Avg Pts | PtsPerGame_PIMadjusted | KRAPPI_0.5model
Kelly Pannek BSM 3.29 3.29 5.3
Nicole Schammel REDWNG 4.09 4.02 5.2
Dani Cameranesi BLAKE 3.45 3.38 4.9
Amy Petersen MNTKA 1.95 1.95 4.9
Lisa Marvin WRRD 3.14 3.12 4.8
Kayla Gardner WRRD 3.05 2.91 4.5
Laura Bowman MNTKA 1.71 1.69 4.2
Kiersten Falck BLAINE 2.7 2.57 4.1
Katie Rooney BUFF 2.52 2.47 4.0
Reagan Haley REDWNG 2.91 2.84 3.7
Corbin Boyd HPKNS 2.21 2.20 3.7
Brittany Wheeler BSM 2.32 2.30 3.7
Emilie Brigham ANOKA 2.14 2.13 3.7
Charly Dahlquist EDENPR 1.78 1.61 3.7
Amy Menke SHAK 2.43 2.40 3.6
Caitlin Reilly BSM 2.32 2.24 3.6
Kate Schipper* BRECK 2.32 2.27 3.6
Megan Wolfe EAGAN 2.12 2.05 3.5
Nina Rodgers HPKNS 2.14 2.05 3.5
Kate Flug RSVL 2.09 2.04 3.4
Lauren Hespenheide SHAK 2.39 2.25 3.4
Brianna Breiland CRKSTN 2.75 2.64 3.4
Jessica Aney RCHCEN 3.13 3.13 3.4
Demi Gardner WRRD 2.23 2.16 3.3
Angie Heppelmann EDENPR 1.52 1.45 3.3
Taylor Williamson EDINA 1.57 1.47 3.3
Carly Moran WINONA 2.95 2.91 3.2
Dana Rasmussen DODGE 2.61 2.52 3.1
Lindsay Roethke BUFF 1.96 1.92 3.1
Dani Sibley NWRCTY 2.18 2.09 3.0
Seems like left to your own devices you all will have this fine tuned pretty well. The problems that remain, as I see it, are how do you address the fact that someone might have tough teams on their schedule but they never score against them, while racking up 5-8 points per game against the really weak teams. For decent quality skaters that put their heads down and skate coast to coast going around the opposing "cones" and past all their team mates until they score, their stats are over inflated if the objective is to find those that can play at a high level against strong competition.
If you tossed out all the points against weak teams, you are closer to the truth. However, then you end up throwing out some of the players at the top, perhaps unfairly, because they don't play more than 2-4 good teams all year. That doesn't mean they are not very good players, just means they are in a crappy conference and/or have a very weak non conference schedule; neither of which is their fault.
And then perhaps you should consider, as suggested earlier, how much they are actually playing. I would say basically all in the top 10 lists above play every other shift AND the power play AND the penalty kill. I am assuming they deserve to be in that spot but sometimes its just a coaches call on who gets the extra time; particularly if a team is more than 5-6 higher end players deep. Players on teams that play 3 lines for the most part see less ice than those that strictly play two lines no matter what the score.
Finally, being on a good line and perhaps a good team, can be a big game changer. If your coach plays the top 3 forwards and top 2 defense together all the time and you are in that group, you are in a good spot UNLESS some of those top players are puck hogs and you never get the puck.
Sorry, wish I had solutions instead of just problems. Still, I think you all are onto something here. Fine tune it and get a patent! I think you could sell it to every college coach.
If you tossed out all the points against weak teams, you are closer to the truth. However, then you end up throwing out some of the players at the top, perhaps unfairly, because they don't play more than 2-4 good teams all year. That doesn't mean they are not very good players, just means they are in a crappy conference and/or have a very weak non conference schedule; neither of which is their fault.
And then perhaps you should consider, as suggested earlier, how much they are actually playing. I would say basically all in the top 10 lists above play every other shift AND the power play AND the penalty kill. I am assuming they deserve to be in that spot but sometimes its just a coaches call on who gets the extra time; particularly if a team is more than 5-6 higher end players deep. Players on teams that play 3 lines for the most part see less ice than those that strictly play two lines no matter what the score.
Finally, being on a good line and perhaps a good team, can be a big game changer. If your coach plays the top 3 forwards and top 2 defense together all the time and you are in that group, you are in a good spot UNLESS some of those top players are puck hogs and you never get the puck.
Sorry, wish I had solutions instead of just problems. Still, I think you all are onto something here. Fine tune it and get a patent! I think you could sell it to every college coach.
-
- Posts: 7260
- Joined: Tue Nov 07, 2006 10:28 pm
Not sure the college coaches would need it, as the first 7 players on the latest list (plus many others further down) are all committed to go D1:Nimrod wrote:Sorry, wish I had solutions instead of just problems. Still, I think you all are onto something here. Fine tune it and get a patent! I think you could sell it to every college coach.
Kelly Pannek BSM 3.29 3.29 5.3 - Minnesota
Nicole Schammel REDWNG 4.09 4.02 5.2 – Minnesota State
Dani Cameranesi BLAKE 3.45 3.38 4.9 - Minnesota
Amy Petersen MNTKA 1.95 1.95 4.9 – Penn State
Lisa Marvin WRRD 3.14 3.12 4.8 – North Dakota
Kayla Gardner WRRD 3.05 2.91 4.5 – North Dakota
Laura Bowman MNTKA 1.71 1.69 4.2 – Penn State
One other point that I don't think has been brought up yet (?) is that several players who were chosen to represent the USA in the U18 World Tournament in Finland missed several games. If they hadn't missed those games they would obviously be further up on the list. These include Pannek (already your #1), Cameranesi, Menke, Rodgers, Schipper and Wolfe (plus two defenders not on the list, Sydney Baldwin and Sidney Morin from Minnetonka).
-
- Posts: 416
- Joined: Wed Nov 25, 2009 3:31 pm
I don't think SOS as reported in the KRACH rankings is a valid scalar. Multiplying by some constant or applying any purely mathematical modifier is not going to change that. Any use of SOS implies that the ranking order of teams has some linear mapping to the difficulty of scoring against those teams, and that is totally wrong.
If we are to place any belief in KRACH, you should use KRACH rating numbers. Using your thinking, SOS implies that it is twice as hard to score goals against MV as it is against Benilde. However, the KRACH rating implies that MV is only 25% better.
You might get better results by computing an average opponent KRACH rating to be used for scaling, or scale individual game goals using the opponent's KRACH rating. At least KRACH rating implies "relative goodness" as opposed to ranking order.
I'd be inclined to toss KRACH out for this scoring discussion. After all, you are trying to get a measure of how good a player is at scoring, not how good their goalie is. Charlie Dahlquist is a good hockey player, but she is not a scoring machine. Using KRACH SOS you reward Charlie for Makenzie Johnson being a good goalie and the entire team playing solid defense. How is good team defense detrimental to scoring?
I'd be more inclined to use something like goals against. If a player scores 60 goals, and her average opponent gives up an average of 5 goals per game, she gets an adjusted goal rating of 12. Another player scores 30 goals, but she played against teams with an average of 2 goals per game for an adjusted goal rating of 15. Which player is better? I don't really know, but it feels like a better measure to me.
The algorithm is simple enough, but getting the data in an easily workable format is another matter.
If we are to place any belief in KRACH, you should use KRACH rating numbers. Using your thinking, SOS implies that it is twice as hard to score goals against MV as it is against Benilde. However, the KRACH rating implies that MV is only 25% better.
You might get better results by computing an average opponent KRACH rating to be used for scaling, or scale individual game goals using the opponent's KRACH rating. At least KRACH rating implies "relative goodness" as opposed to ranking order.
I'd be inclined to toss KRACH out for this scoring discussion. After all, you are trying to get a measure of how good a player is at scoring, not how good their goalie is. Charlie Dahlquist is a good hockey player, but she is not a scoring machine. Using KRACH SOS you reward Charlie for Makenzie Johnson being a good goalie and the entire team playing solid defense. How is good team defense detrimental to scoring?
I'd be more inclined to use something like goals against. If a player scores 60 goals, and her average opponent gives up an average of 5 goals per game, she gets an adjusted goal rating of 12. Another player scores 30 goals, but she played against teams with an average of 2 goals per game for an adjusted goal rating of 15. Which player is better? I don't really know, but it feels like a better measure to me.
The algorithm is simple enough, but getting the data in an easily workable format is another matter.
I use points per game, not total points in season. So the players who were busy scoring goals against team Canada are not punished in my algorithm.MNHockeyFan wrote:Not sure the college coaches would need it, as the first 7 players on the latest list (plus many others further down) are all committed to go D1:Nimrod wrote:Sorry, wish I had solutions instead of just problems. Still, I think you all are onto something here. Fine tune it and get a patent! I think you could sell it to every college coach.
Kelly Pannek BSM 3.29 3.29 5.3 - Minnesota
Nicole Schammel REDWNG 4.09 4.02 5.2 – Minnesota State
Dani Cameranesi BLAKE 3.45 3.38 4.9 - Minnesota
Amy Petersen MNTKA 1.95 1.95 4.9 – Penn State
Lisa Marvin WRRD 3.14 3.12 4.8 – North Dakota
Kayla Gardner WRRD 3.05 2.91 4.5 – North Dakota
Laura Bowman MNTKA 1.71 1.69 4.2 – Penn State
One other point that I don't think has been brought up yet (?) is that several players who were chosen to represent the USA in the U18 World Tournament in Finland missed several games. If they hadn't missed those games they would obviously be further up on the list. These include Pannek (already your #1), Cameranesi, Menke, Rodgers, Schipper and Wolfe (plus two defenders not on the list, Sydney Baldwin and Sidney Morin from Minnetonka).
I think Benilde played Tonka and EP during the U18 worlds. So Benilde's team SOS would have been helped by those strong opponents, but Panic wasn't there for it. Could have brought her average pts per game down a bit, maybe??? Nonetheless, I thought it best just to leave those players in and use pts per game, not total points.
Good feedback, everybody.luckyEPDad wrote:I don't think SOS as reported in the KRACH rankings is a valid scalar. Multiplying by some constant or applying any purely mathematical modifier is not going to change that. Any use of SOS implies that the ranking order of teams has some linear mapping to the difficulty of scoring against those teams, and that is totally wrong.
If we are to place any belief in KRACH, you should use KRACH rating numbers. Using your thinking, SOS implies that it is twice as hard to score goals against MV as it is against Benilde. However, the KRACH rating implies that MV is only 25% better.
You might get better results by computing an average opponent KRACH rating to be used for scaling, or scale individual game goals using the opponent's KRACH rating. At least KRACH rating implies "relative goodness" as opposed to ranking order.
I'd be inclined to toss KRACH out for this scoring discussion. After all, you are trying to get a measure of how good a player is at scoring, not how good their goalie is. Charlie Dahlquist is a good hockey player, but she is not a scoring machine. Using KRACH SOS you reward Charlie for Makenzie Johnson being a good goalie and the entire team playing solid defense. How is good team defense detrimental to scoring?
I'd be more inclined to use something like goals against. If a player scores 60 goals, and her average opponent gives up an average of 5 goals per game, she gets an adjusted goal rating of 12. Another player scores 30 goals, but she played against teams with an average of 2 goals per game for an adjusted goal rating of 15. Which player is better? I don't really know, but it feels like a better measure to me.
The algorithm is simple enough, but getting the data in an easily workable format is another matter.
Just to make sure we're on the same page, I use AVG (3rd column in http://www.bgoski.com/KRACH_SOS.htm). MV has an AVG SOS of 41.3; Benilde is 38.5. They're really similar SOS. EP has an AVG SOS of 19, so about twice as tough of a schedule as Benilde (lower AVG = tougher schedule).
My original model would have inflated EP's points by a factor of two compared to Benilde.
Today's refinement is [(Avg pts per game) / (AVG SOS)^0.5]
Using this inverse square root function, EP gets inflated by a factor of 1.41 relative to Benilde, so not quite as extreme.
Good ideas on suggested refinements from every body in this thread. Having the data in a compiled, usable format is the biggest hold-up.
My gut feeling is today's model is vastly better than just looking at total points, and fairer than my initial model. Lumping a season, rather than splitting out game-by-game, has pitfalls and also benefits. There are myriad factors that it cannot account for--quality of goal tending, ability of linemates, 2 lines versus 4 lines in a blow-out game, etc.
-
- Posts: 97
- Joined: Mon Jan 28, 2013 3:52 pm
-
- Posts: 171
- Joined: Wed Mar 03, 2010 9:03 am
I'd say that Goals scored is also flawed, as its fairly easy to score against slow defenders or bad goaltending. Little Suzie puck hog skates around them all and has a good shot so she gets lots of goals and not a lot of assists. Then she gets into a tough game against competent defenders and tries the same stuff. She finds out she can't skate past one defender, let alone a whole team, and coughs up the puck. She also doesn't back check all that well, but that's a separate issue. But she has a lot of goals, and stats never lie.
I'd say any player who puts up a bunch of assists to go with her goals is way more valuable to a winning team. And probably more fun to play with.
Stats lie all the time. The best players on that list are easy to spot when you see them in person. But it is a fascinating exercise.
I'd say any player who puts up a bunch of assists to go with her goals is way more valuable to a winning team. And probably more fun to play with.
Stats lie all the time. The best players on that list are easy to spot when you see them in person. But it is a fascinating exercise.
You could always use a model similar to soccer points where a goal is worth two points and an assist is worth one point (and then normalize back).
I see things happening on both ends of the spectrum. There are those who greatly benefit by having fantastic linemates and get double-digit assists just because the puck is occasionally on their stick, but they're not true goal scorers or playmakers. Then, you have those who are playmakers and make brilliant passes to their linemates for easy goals (and also are not true goal scorers), but they play the game the right way. So, yes a goal is worth more than an assist, but I would also argue that not all assists are created equal. And, of course, we have those what I'm sure are very rare situations on some teams where (nearly) every goal is accompanied by two assists.
I see things happening on both ends of the spectrum. There are those who greatly benefit by having fantastic linemates and get double-digit assists just because the puck is occasionally on their stick, but they're not true goal scorers or playmakers. Then, you have those who are playmakers and make brilliant passes to their linemates for easy goals (and also are not true goal scorers), but they play the game the right way. So, yes a goal is worth more than an assist, but I would also argue that not all assists are created equal. And, of course, we have those what I'm sure are very rare situations on some teams where (nearly) every goal is accompanied by two assists.
-
- Posts: 416
- Joined: Wed Nov 25, 2009 3:31 pm
This is where I think your approach falls down. A teams SOS is the average ranking of all teams played. The only thing that can be said about a team's ranking is that team N should be better than team N+1. Team N could be much better than N+1 or only a tiny bit. The ranking indicates order, not relative quality. The top 5 teams are all pretty equal, and the bottom 5 teams are also all pretty equal. Yet if you compare teams using rankings as a measure of quality, team 1 is 500% better than team 5 while team 115 is 4% better than team 120. Even if you take the square root you end up with team 1 being 22% better than team 5 while team 115 is 2% better. Don't give numbers a meaining that they do not deserve.Bandy wrote:Just to make sure we're on the same page, I use AVG (3rd column in http://www.bgoski.com/KRACH_SOS.htm). MV has an AVG SOS of 41.3; Benilde is 38.5. They're really similar SOS. EP has an AVG SOS of 19, so about twice as tough of a schedule as Benilde (lower AVG = tougher schedule).
Lucky, I agree that using Rank in the KRAPPI formula would be flawed. But that's not what I'm using.luckyEPDad wrote:This is where I think your approach falls down. A teams SOS is the average ranking of all teams played. The only thing that can be said about a team's ranking is that team N should be better than team N+1. Team N could be much better than N+1 or only a tiny bit. The ranking indicates order, not relative quality. The top 5 teams are all pretty equal, and the bottom 5 teams are also all pretty equal. Yet if you compare teams using rankings as a measure of quality, team 1 is 500% better than team 5 while team 115 is 4% better than team 120. Even if you take the square root you end up with team 1 being 22% better than team 5 while team 115 is 2% better. Don't give numbers a meaining that they do not deserve.Bandy wrote:Just to make sure we're on the same page, I use AVG (3rd column in http://www.bgoski.com/KRACH_SOS.htm). MV has an AVG SOS of 41.3; Benilde is 38.5. They're really similar SOS. EP has an AVG SOS of 19, so about twice as tough of a schedule as Benilde (lower AVG = tougher schedule).
KRAPPI uses column 3 (heading = AVG) from KRACH SOS. Ranking is column 1. The current #5 team has an AVG SOS of 32.9. #1 team is at 16.1. So #1 (Tonka) has a 2X tougher schedule than #5 (Prior Lake), not 500% tougher.
Taking inverse square roots, Tonka's KRAPPI points get weighted 1.41x more than Prior Lake, rather than 2x, which was the yesterday's tweak.
What is AVG (column 3 in http://www.bgoski.com/KRACH_SOS.htm)? Here's a definition: "Strength of schedule is a weighted average of your opponents' KRACH ratings." (http://www.collegehockeynews.com/info/?d=krach).
I think this is the definition of the AVG column. I think "ratings" means KRACH ranking here. So Tonka's AVG = 16.1, I think that's the average KRACH ranking of all the teams that Tonka has played against. Maybe that's your quibble with KRAPPI--that the AVG value uses KRACH rankings???
But to re-emphasize: KRAPPI doesn't use simple SOS ranks. Team with #1 SOS does not get weighted 500% more than team with fifth highest SOS; or carried further, team with #1 SOS does not get 50,000% more weight than team with 50th highest SOS. I wouldn't do that unless my daughter played for Tonka and had 1 point on the year.
-
- Posts: 416
- Joined: Wed Nov 25, 2009 3:31 pm
Yep, that's the problem. SOS uses the average of the KRACH rankings, not the average of the KRACH ratings. Rankings are qualitative measures. Then tell you team N is better than team N+1. Ratings are qualitative, they tell you HOW MUCH better team N is than team N+1.Bandy wrote:Lucky, I agree that using Rank in the KRAPPI formula would be flawed. But that's not what I'm using.
KRAPPI uses column 3 (heading = AVG) from KRACH SOS. Ranking is column 1. The current #5 team has an AVG SOS of 32.9. #1 team is at 16.1. So #1 (Tonka) has a 2X tougher schedule than #5 (Prior Lake), not 500% tougher.
Taking inverse square roots, Tonka's KRAPPI points get weighted 1.41x more than Prior Lake, rather than 2x, which was the yesterday's tweak.
What is AVG (column 3 in http://www.bgoski.com/KRACH_SOS.htm)? Here's a definition: "Strength of schedule is a weighted average of your opponents' KRACH ratings." (http://www.collegehockeynews.com/info/?d=krach).
I think this is the definition of the AVG column. I think "ratings" means KRACH ranking here. So Tonka's AVG = 16.1, I think that's the average KRACH ranking of all the teams that Tonka has played against. Maybe that's your quibble with KRAPPI--that the AVG value uses KRACH rankings???
But to re-emphasize: KRAPPI doesn't use simple SOS ranks. Team with #1 SOS does not get weighted 500% more than team with fifth highest SOS; or carried further, team with #1 SOS does not get 50,000% more weight than team with 50th highest SOS. I wouldn't do that unless my daughter played for Tonka and had 1 point on the year.
For example I calculated the average ranking and rating for Mounds View and Minnetonka. Mounds view has a schedule against teams ranked 81, 36, 40, 48, 34, 68, 37, 44, 22, 24, 35, 58, 73, 14, 41, 48, 68, 17, 37, 44, 22, 24, 35 Avg = 41.304. MV SOS AVG is reported as 41.304 and that is the average of the KRACH rankings of their opponents. The average KRACH rating is a 37.606.
Minnetonka has played a much harder schedule with all but 2 opponents ranked in the top 30, and many games against teams in the top 10. Minnetonkas SOS is 19.095 and their average opponent KRACH rating is 196.178.
The two numbers show something quite different. According to SOS, Minnetonka's average opponent is 20th ranked Orono. Based on average KRACH ratings it is 6th ranked Buffalo. For Mounds View their SOS avg opponent is 38th ranked Dodge County. Based on avg KRATCH ratings it is 37th ranked Forest Lake.
The two numbers tell very different stories.
Lucky, that clears things up a little. Your comments were thought provoking--more than you might think at first glance.
True, but rating is a highly skewed metric. I prefer parametric models (based on measurements rather than ranks)--if an appropriate transformation can be found to make the data distribution not so skewed.
In this case, I had AVG KRACH rank of opponents at my disposal. If someone could avail Average KRACH rating of opponents, in compiled form, I could play with that. However, read on...
The AVG KRACH rank of opponents, and AVG KRACH rating of opponents should strongly correlate. Magnitude will differ, but there should be a monotonic trend--as AVG rank increases, AVG rating decreases, right?
Statistics based on ranks are used all the time in stats field (often called non-parametric statistics). Especially when raw data have nasty distributions for which assumptions of parametric statistics would be severely violated--highly skewed distributions, for example, can cause some big problems with parametric stats.
To fix the skew, I'd start with a log-transform and see how that works. But then you're not dealing with the same magnitude scale that lies within KRACH ratings, which seemed to be what your discomfort was.
The AVG KRACH rank of opponents is much less skewed. From my N=0.5 model (yesterday's post) -- MV player would have to score about 1.6 points for every one of Tonka's. A log10(KRACH rating of opponent) model makes that ratio about 1.46. Either is more realistic than a 5.3X weighting, I would argue. And we haven't even gotten to Blake or Red Wing yet... If you preserve the magnitude of SOS differences for Red Wing, then Schammel falls off a cliff.
Bottom line after playing with your examples -- I'm not sure using a parametric model with appropriate transform would yield better results than a non-parametric model with appropriate transform. Avg KRACH rank gets rid of a lot of skewness that I'd want to get rid of if I used Avg KRACH rating.
In terms of identifying offensive prowess a simple points adjustment using untransformed KRACH rating of opponents--preserving the magnitude of differences in SOS--would place Tonka at the top of the heap; Edina and EP would also be in that heap. Then there's a steep decline in offensive prowess so you might as well pack up & recruit in Canada.
A model based on less skewed data identifies Panic, Cameranesi, Schammel among Minnesota's best, and some pretty strong players (HP 16, HP 17, USA18, D1-recruits) round out the top 30.
It's not a substitute for the Advanced / HP process in terms of identifying 'best players,' but a fun exercise.
So your quibble is AVG KRACH rank of opponents doesn't capture magnitude of differences as well as AVG KRACH rating of opponents. (rank = 1 to N; rating = the KRACH rating or KRACH score).luckyEPDad wrote: Yep, that's the problem. SOS uses the average of the KRACH rankings, not the average of the KRACH ratings. Rankings are qualitative measures. Then tell you team N is better than team N+1. Ratings are qualitative, they tell you HOW MUCH better team N is than team N+1.
True, but rating is a highly skewed metric. I prefer parametric models (based on measurements rather than ranks)--if an appropriate transformation can be found to make the data distribution not so skewed.
In this case, I had AVG KRACH rank of opponents at my disposal. If someone could avail Average KRACH rating of opponents, in compiled form, I could play with that. However, read on...
The AVG KRACH rank of opponents, and AVG KRACH rating of opponents should strongly correlate. Magnitude will differ, but there should be a monotonic trend--as AVG rank increases, AVG rating decreases, right?
Statistics based on ranks are used all the time in stats field (often called non-parametric statistics). Especially when raw data have nasty distributions for which assumptions of parametric statistics would be severely violated--highly skewed distributions, for example, can cause some big problems with parametric stats.
If we look at AVG KRACH rating of opponents, using your numbers, MV = ~37 & Tonka = 196. So what model would you use to adjust points per game for SOS? Straight up? If you take (pts per game times AVG KRACH rating), it underweights MV with respect to Tonka too severely, IMO. Tonka's schedule is ~ 5.3 times tougher than MV's, so a Mounds View player would have to score 5.3 pts for every one of Peterson's or Bowman's.luckyEPDad wrote: For example I calculated the average ranking and rating for Mounds View and Minnetonka. Mounds view has a schedule against teams ranked 81, 36, 40, 48, 34, 68, 37, 44, 22, 24, 35, 58, 73, 14, 41, 48, 68, 17, 37, 44, 22, 24, 35 Avg = 41.304. MV SOS AVG is reported as 41.304 and that is the average of the KRACH rankings of their opponents. The average KRACH rating is a 37.606.
Minnetonka has played a much harder schedule with all but 2 opponents ranked in the top 30, and many games against teams in the top 10. Minnetonkas SOS is 19.095 and their average opponent KRACH rating is 196.178.
The two numbers show something quite different. According to SOS, Minnetonka's average opponent is 20th ranked Orono. Based on average KRACH ratings it is 6th ranked Buffalo. For Mounds View their SOS avg opponent is 38th ranked Dodge County. Based on avg KRATCH ratings it is 37th ranked Forest Lake.
The two numbers tell very different stories.
To fix the skew, I'd start with a log-transform and see how that works. But then you're not dealing with the same magnitude scale that lies within KRACH ratings, which seemed to be what your discomfort was.
The AVG KRACH rank of opponents is much less skewed. From my N=0.5 model (yesterday's post) -- MV player would have to score about 1.6 points for every one of Tonka's. A log10(KRACH rating of opponent) model makes that ratio about 1.46. Either is more realistic than a 5.3X weighting, I would argue. And we haven't even gotten to Blake or Red Wing yet... If you preserve the magnitude of SOS differences for Red Wing, then Schammel falls off a cliff.
Bottom line after playing with your examples -- I'm not sure using a parametric model with appropriate transform would yield better results than a non-parametric model with appropriate transform. Avg KRACH rank gets rid of a lot of skewness that I'd want to get rid of if I used Avg KRACH rating.
In terms of identifying offensive prowess a simple points adjustment using untransformed KRACH rating of opponents--preserving the magnitude of differences in SOS--would place Tonka at the top of the heap; Edina and EP would also be in that heap. Then there's a steep decline in offensive prowess so you might as well pack up & recruit in Canada.
A model based on less skewed data identifies Panic, Cameranesi, Schammel among Minnesota's best, and some pretty strong players (HP 16, HP 17, USA18, D1-recruits) round out the top 30.
It's not a substitute for the Advanced / HP process in terms of identifying 'best players,' but a fun exercise.