def run_pipeline(): pipeline_in = util.get_fd_pipe_in_fname() pipeline_out = util.get_fd_pipe_out_fname() if os.path.exists(pipeline_out): f = open(pipeline_out, 'r') data = json.loads(f.read()) f.close() return data player_mapping = {} dataframe = pandas.read_csv(pipeline_in) nrows = len(dataframe) for c in range(nrows): curr_player = ' '.join([dataframe['First Name'][c], dataframe['Last Name'][c]]) fanduel_data = {} fanduel_data['salary'] = dataframe['Salary'][c] fanduel_data['FPPG'] = dataframe['FPPG'][c] player_mapping[curr_player] = fanduel_data data = json.dumps(player_mapping, sort_keys=True, indent=4) f = open(pipeline_out, 'w+') f.write(data) f.close() return data
import daily_lineup_pipeline from util import get_curr_date, Player, Team, Game, parse_team_depth, parse_games, get_curr_time, load_config import util from query_engine import PlayerQueryEngine import json import datetime import os import datetime """ GLOBAL DATA LOADING """ fanduel_data_path = util.get_fd_pipe_out_fname() fanduel_data = json.loads(open(fanduel_data_path, 'r').read()) player_query_engine = PlayerQueryEngine() def player_stats_perspective(player): name = player.get_name() player.set_property('last_5_games', player_query_engine.get_last_n_stats(name, n=5)) if len(player.get_property('last_5_games')) > 0: player.set_property('last_5_games_avg', player_query_engine.get_last_n_averaged_stats(name, n=5)) player.set_property('last_5_games_std', player_query_engine.get_last_n_stats_std(name, n=5)) # @TODO: Instead of repeating query, just make this query first and choose bottom half of the data # and compute the average and std manually that way player.set_property('last_10_games', player_query_engine.get_last_n_stats(name, n=10)) if player.get_property('last_10_games') and len(player.get_property('last_10_games')) > 0: player.set_property('last_10_games_avg', player_query_engine.get_last_n_averaged_stats(name, n=10))