def ReadHockeyData(filename='hockey_data.csv'): """Read game scores from the data file. filename: string """ game_list = columns.read_csv(filename, Game) # map from gameID to list of two games games = {} for game in game_list: if game.season != 2011: continue key = game.game games.setdefault(key, []).append(game) # map from (team1, team2) to (score1, score2) pairs = {} for key, pair in games.iteritems(): t1, t2 = pair key = t1.team, t2.team entry = t1.total, t2.total pairs.setdefault(key, []).append(entry) ProcessScoresTeamwise(pairs) ProcessScoresPairwise(pairs)
def ReadHockeyData(filename='hockey_data.csv'): """Read game scores from the data file. filename: string """ game_list = columns.read_csv(filename, Game) # map from gameID to list of two games games = {} for game in game_list: if game.season != 2011: continue key = game.game games.setdefault(key, []).append(game) # map from (team1, team2) to (score1, score2) pairs = {} for key, pair in games.items(): t1, t2 = pair key = t1.team, t2.team entry = t1.total, t2.total pairs.setdefault(key, []).append(entry) ProcessScoresTeamwise(pairs) ProcessScoresPairwise(pairs)
def ReadHockeyData(filename='hockey_data.csv'): """Read game scores from the data file. filename: string """ game_list = columns.read_csv(filename, Game) games = {} # map from gameID to list of two games for game in game_list: if game.season != 2011: continue key = game.game games.setdefault(key, []).append(game) pairs = {} # map from (team1, team2) to (score1, score2) for key, pair in games.iteritems(): t1, t2 = pair key = t1.team, t2.team entry = t1.total, t2.total pairs.setdefault(key, []).append(entry) goals_scored = {} # map from (team1, team2) to list of goals scored for key, entries in pairs.iteritems(): t1, t2 = key for entry in entries: g1, g2 = entry goals_scored.setdefault((t1, t2), []).append(g1) goals_scored.setdefault((t2, t1), []).append(g2) # make a list of average goals scored for each pair of teams lams = [] for key, goals in goals_scored.iteritems(): if len(goals) < 3: continue lam = thinkstats.Mean(goals) lams.append(lam) # make the distribution of average goals scored cdf = thinkbayes.MakeCdfFromList(lams) myplot.Cdf(cdf) myplot.Show() mu, var = thinkstats.MeanVar(lams) print 'mu, sig', mu, math.sqrt(var) print 'BOS v VAN', pairs['BOS', 'VAN']