Let's say I have a list of 100 MLB pitchers and 5 statistics for each of them. The difference between, for example, an ERA of 3.5 and 3.1 might not look like a lot to a naive similarity algorithm, but is a lot in baseball. Given that a lot of the player statistics that I'm looking at have this little variance, a lot of a little variance like this, what is the best way to calculate similarity between two players?
An example of the data might look like this:
Player | ERA | Wins | Strikeouts
--------------------------------
A | 3.5 | 15 | 180
B | 3.1 | 12 | 210
C | 3.4 | 13 | 150
I've used cosine similarity, and the results are all too similar, down to a thousandth of a decimal place.