Monday, January 20, 2014

How do ESPN and Yahoo Rank Fantasy Basketball Players?


Every fantasy basketball player tries to rank players on their own. There are many ways to figure out what players give you a better chance of winning. The best way is to watch a lot of basketball and judge who is performing well, and anticipate who will get better, come back from injury, or get more playing time. Obviously, most fantasy basketball players aren't going to be doing this as a full-time job, so that isn't going to cut it. Reading a lot about the NBA helps a lot, gaining knowledge from the people that follow the NBA professionally (or semi-professionally at least). But the way most fantasy players add players and make trades is by looking at box scores then trying to compare them, combined with following the league a bit.

A great tool to use is the in-game player ranks – it’s not telling you how a player will perform in the future, but it is supposed to tell you how much players contributed to fantasy teams over the specified time period in the past.

How do they come up with these ranks? To many players, it is a magic black box that comes up with a number that doesn't always make sense. But often, they do - Kevin Love is putting up his usual monster numbers, and sure enough, he’s ranked in the top 5. 

They aren't hiding how they do the ranks though - Yahoo, Basketball Monster, and ESPN all rank their players using “Standard Scoring” (also referred to as a Z-Score). Basketball Monster links to the same Wikipedia page I do and posts the individual Standard Scores for each player. ESPN at least lists the score of each category. If you use the same time periods, league size, and categories, Basketball Monster will give you very similar ranks to Yahoo and ESPN. 

There are slight differences, indicating added minor wrinkles, but the ranks are almost never more than a few ranks different. Yahoo appears to use a population of 130 (standard yahoo league size) and Basketball Monster as a default uses a population of 156 - 12 teams of 13 players, but is very flexible. ESPN's player rater seems to use different population sizes for different statistics. But, the results for all three websites are based on Standard Scoring.

How to Properly Weigh Percentages 


In order to compare percentages properly with each other, they have to be a countable stat, like blocks or rebounds. Obviously shooting 9 of 10 is better than 2 of 2 - but shooting 100% is better than 90%. Instead, you should calculate the number of made shots above your opponents field goal percentage.

If your opponent shoots 50%, we count how much each player helps us beat that percentage. If Durant shoots 9 of 20, then he is one field goal short of the goal percentage (50%). Conversely, if LeBron shoots 12 of 16 then he is four field goals above 50% for the night. 

Free throw percentage is calculated the same way. This creates new, countable stats that we can substitute in for the percentages. I call these stats "FGOP" and "FTOP" (pronounced "Ef-Gop" and "Ef-Top") - Field Goals Over Percentage and Free Throws Over Percentage. These are countable stats just like treys and blocks. In the above example, Durant scored -1 FGOP and LeBron had +4 FGOP. 

Obviously, everyone's opponent has different shooting percentages, so we have to use average field goal percentage (or free throw percentage) - which is, on average, what everyone's opponent shoots. I have been using this method for years, but as I researched this article, I found that Basketball Monster and ESPN do as well. Given how similar the ranks are, I believe Yahoo does too. But most importantly, this method makes logical sense to me.

Your opponents, on average, will shoot the league average. Lets say this week your opponent shoots exactly the league average. Going into the last night of the matchup, your team has scored cumulatively -1 FGOP. If on the last night, your team scores greater than +1 FGOP, then your team will win the matchup by scoring a positive number of baskets above your opponents percentage.

The player who amasses the most FGOP or FTOP will almost always win the matchup. If there is a large difference in attempts, then it is more likely the player scoring fewer FGOP will win. On the extreme side, if your team made its only free throw, you would win that category despite only having approximately .25 FTOP.

FGOP and FTOP would always predict the winner of a matchup if you based the statistic on your opponents percentages (a positive sum would mean you win, negative you lose) - but using average percentages is a great way compare a player's overall contribution to field goal and free throw percentage across all teams. 

The Ranking Process


Using the Standard Scoring method is simple in theory, but gets complicated to actually do. The general process has to be iterative in order to get the averages of only the top players.

1. Rank all the NBA players in descending value. How you rank the players is not really important.
2. Determine the population size – the size of your league. Our example will be a 13-player, 10-team – a population of 130.
3. Find the average production in each category of the “own-able” players – in our example, the top 130.
4. Find the standard deviation of each category in our population.
5. Calculate the Standard Score of each player – all players in the NBA. Each player gets 1 point for each standard deviation he is from the average of our own-able population. If the average player in the top 130 scores 10 points per game and the standard deviation is 5 points, and you score 5 points per game, your score is -1. Conversely, if you score 15 points per game, your score is +1.
6. Re-rank all of the players by the resulting sums of Standard Scores of each category your league competes in.
7. Repeat steps 3-6 until the ranks no longer change.

If computing standard scores isn't clear, and Wikipedia did not help you, I have a fun example to possibly help explain it.

Seven NBA stars have a sock contest at the All-Star game. They go to their luggage and count the pairs of socks of each color they have with them. The winner is the player with the highest Standard Score for their contest’s three categories – Red, Blue, and Black. I'm sure Cliff Paul would have won had he been invited.




(And yes, those are actually approximations of Points, Assists, and Steals)

As an aside, ESPN’s player rater and Yahoo’s in-game ranks do not change based on your league’s settings (Yahoo uses 9 categories including turnovers, ESPN uses 8 categories). Every custom league that has changed the categories and uses the in-game ranks to evaluate trades and waiver-wire pickups is using numbers that don’t actually apply to their league. To determine the Standard Scores for your league’s settings, I recommend using Basketball Monster’s tools.

No comments:

Post a Comment