Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- usernames = open('usernames.txt')
- next(usernames)
- next(usernames)
- users = {}
- for line in usernames:
- userid, joindate, name = line.strip().split('\t')
- users[userid]={'name': name, 'items':0.0, 'faves':0.0}
- for commentfile in 'commentdata_askme.txt', 'commentdata_mefi.txt', 'commentdata_meta.txt', 'commentdata_music.txt':
- f = open(commentfile)
- next(f)
- next(f)
- for line in f:
- commentid, postid, userid, datestamp, faves, bestanswer = line.strip().split('\t')
- try:
- users[userid]['items'] += 1
- users[userid]['faves'] += int(faves)
- except KeyError:
- pass
- for postfile in 'postdata_askme.txt', 'postdata_mefi.txt', 'postdata_meta.txt', 'postdata_music.txt':
- f = open(postfile)
- next(f)
- next(f)
- for line in f:
- try:
- postid, userid, datestamp, category, comments, favorites, deleted, reason = line.strip().split('\t')
- except ValueError:
- continue
- try:
- users[userid]['items'] += 1
- users[userid]['faves'] += int(favorites)
- except KeyError:
- pass
- results = []
- for key, value in users.items():
- if value['items']:
- results.append([int((value['faves']**2)/value['items']), value['name'], key])
- results.sort()
- results
- max_faves = results[-1][0]*1.0
- for i in reversed(results[-100:]):
- faves, name, key = i
- print "%.6f\t%s (%s)" % (faves/max_faves, name, key)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement