Skip to content

Instantly share code, notes, and snippets.

@fangeugene
Last active April 3, 2017 14:04
Show Gist options
  • Save fangeugene/bdc9bb304d0d57ab7b1c4349ecb07a7d to your computer and use it in GitHub Desktop.
Save fangeugene/bdc9bb304d0d57ab7b1c4349ecb07a7d to your computer and use it in GitHub Desktop.
Compute 2017 Top Teams
import datetime
from models.event import Event
events = Event.query().filter(
Event.start_date >= datetime.datetime(2017, 3, 29)).filter(
Event.start_date <= datetime.datetime(2017, 4, 2)).order(
Event.start_date).fetch()
gear_stats = {}
pressure_stats = {}
for event in events:
predictions = event.details.predictions
if predictions and predictions.get('stat_mean_vars'):
for team, val in predictions['stat_mean_vars']['qual']['gears']['mean'].items():
gear_stats[team] = val
for team, val in predictions['stat_mean_vars']['qual']['pressure']['mean'].items():
pressure_stats[team] = val
aggregate_stats = {}
for team, gear_stat in gear_stats.items():
pressure_stat = pressure_stats[team]
aggregate_stats[team] = gear_stat/max(gear_stats.values()) + pressure_stat/max(pressure_stats.values())
for team, val in sorted(aggregate_stats.items(), key=lambda x: -x[1]):
print team, val, gear_stats[team], pressure_stats[team]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment