base_k = 5 cutoff = 1650 reduction = 0.1 mov = mov_exp w90 = 200 elo = DynamicElo(base_k,cutoff,reduction,mov,w90) data_path = '../../cwl-data/data/' season = TournamentData(None,data_path,wwii=True) elo_i = initialize_elo(Tournament(TournamentData('CWL Champs 2017',data_path).data).raw_data) for td in season.tourneys[:-1]: t = Tournament(td['data']) t.build_tournament() t.populate_next_series() t.set_first_series_elo(elo_i) t.play(elo) elo_f = t.final_elos() elo_i = regressfunc(merge_elo(elo_i,elo_f)) t0 = perf_counter() first = pd.DataFrame() second = pd.DataFrame() third = pd.DataFrame() for i in range(1000): tc = copy.deepcopy(Tournament(season.tourneys[-1]['data'])) tc.build_tournament() tc.populate_next_series() tc.set_first_series_elo(elo_i) sim = Simulation(tc) sim.run(elo) finals = sim.tournament[-1]['data']
# TODO: run perf counter on each of these steps t0 = perf_counter() season = TournamentData(None,data_path,wwii=True) t1= perf_counter() elo_i = initialize_elo(Tournament(TournamentData('CWL Champs 2017',data_path).data).raw_data) t2 = perf_counter() tr = Tournament(season.tourneys[9]['data']) t25 = perf_counter() tr.build_tournament() t3 = perf_counter() tr.set_first_series_elo(elo_i) t4 = perf_counter() tr.populate_next_series() t5 = perf_counter() tr.play(k1) t6 = perf_counter() tr.final_elos() t7 = perf_counter() print( round(t1-t0,3),'load wwii data\n', round(t2-t1,3),'init elo from 2017\n', round(t25-t2,3),'instantiate tourney\n', round(t3-t25,3),'build tourney\n', round(t4-t3,3),'set first series elo\n', round(t5-t4,3),'pop next series\n', round(t6-t5,3),'play tourney\n', round(t7-t6,3),'final elos\n' )