Olympics weighted medal count scoring
Posted on August 18th, 2008
You can follow any responses to this entry through the RSS 2.0 feed.Well, you know the every-4-year buzz about Olympics scoring.
This year, for example some sites score based on the total amount of medals which makes USA win. Well this scoring is a bit dumb, because gold is harder to achieve than 2 bronze for example.
Now, most other sites base the score on the number of gold medals which makes China win.
Equally dumb and short-sightted, if you ask me.
This also has some bad effects on the Olympics. Countries, which usually sponsor their athletes, want to win Gold, so that they have a good country-ranking in tables.
Thus, people which could qualify for bronze or silver, or simply participate do not get any of this and usually simply aren’t getting to participate, since, only Gold matters.
This is completely against what the Olympics were first created for, of course. Now this is a free world, and this scoring will always be there. According to some article I’ve found, the IOC (International Olympic Comitee) doesn’t endorse any kind of ranking. They also note that in 1908, weighted scoring was used by abandonned. Weights were Gold: 5, Silver: 3, Bronze: 1
Anyway, as far as ranking goes, that’s the most fair ranking there is, so today’s 2008 results with Gold: 3, Silver:2, Bronze:1
Because if you are completely objective, Gold is only better than Silver and Silver then bronze. Not X times better. One Silver isnt three Bronze and one Gold five Bronze ! Gold simply means the guy did better than the Silver guy. Maybe by 0.0001 second, maybe by 5 seconds, makes no difference.)
| Country | Score | |
|---|---|---|
| 1 | China | 144 |
| 2 | United States | 124 |
| 3 | Australia | 65 |
| 4 | Russia | 57 |
| 5 | Great Britain | 55 |
| 6 | South Korea | 47 |
| 7 | Germany | 46 |
| 8 | France | 43 |
| 9 | Japan | 41 |
| 10 | Italy | 36 |
Doesn’t that look more fair? Does to me. Script to generate this after the jump.
#!/usr/bin/python from BeautifulSoup import BeautifulSoup import urllib2, operator weight = {'gold': 3, 'silver': 2, 'bronze': 1} page = urllib2.urlopen("http://www.mapsofworld.com/olympic-trivia/olympic-games-results/medals-by-country.html") soup = BeautifulSoup(page) table = soup.findAll('table')[12] medals = {} for tr in table.findAll('tr'): td = tr.findAll('td') if td == None: continue if len(td) < 4: continue if td[0].string == None: continue medals[td[0].string] = [int(td[1].string), int(td[2].string), int(td[3].string)] score = [] for i in medals: c = medals[i] score.append([i, (c[0]*weight['gold'])+(c[1]*weight['silver'])+(c[2]*weight['bronze'])]) score.sort(key=operator.itemgetter(1)) score.reverse() print "Country\t\t\t\tScore" print "---" x=0 for i in score: x=x+1 p1 = str(x) + " - " + i[0].__str__() if len(p1) > 23: tab = "\t" elif len(p1) > 15: tab = "\t\t" elif len(p1) > 7: tab="\t\t\t" else: tab="\t\t\t\t" print p1+tab+str(i[1])
September 27th, 2008 at 2:06 am
tin même avec les JO il nous trouve le moyen de nous pondre du code
grand fou xD