Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -68,21 +68,31 @@ import requests
|
|
68 |
import pandas as pd
|
69 |
|
70 |
# # Loop over the counter and format the API call
|
71 |
-
r = requests.get('https://statsapi.web.nhl.com/api/v1/schedule?startDate=2023-10-01&endDate=2024-06-01')
|
72 |
-
schedule = r.json()
|
73 |
|
74 |
-
def flatten(t):
|
75 |
-
|
76 |
|
77 |
-
game_id = flatten([[x['gamePk'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
78 |
-
game_date = flatten([[x['gameDate'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
79 |
-
game_home = flatten([[x['teams']['home']['team']['name'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
80 |
-
game_away = flatten([[x['teams']['away']['team']['name'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
81 |
|
82 |
-
schedule_df = pd.DataFrame(data={'game_id': game_id, 'game_date' : game_date, 'game_home' : game_home, 'game_away' : game_away})
|
83 |
-
schedule_df.game_date = pd.to_datetime(schedule_df['game_date']).dt.tz_convert(tz='US/Eastern').dt.date
|
84 |
-
schedule_df = schedule_df.replace('Montréal Canadiens','Montreal Canadiens')
|
85 |
-
schedule_df.head()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
86 |
|
87 |
team_abv = pd.read_csv('team_abv.csv')
|
88 |
yahoo_weeks = pd.read_csv('yahoo_weeks.csv')
|
@@ -105,10 +115,11 @@ cmap_off = matplotlib.colors.LinearSegmentedColormap.from_list("", ["#FFFFFF","#
|
|
105 |
cmap_back = matplotlib.colors.LinearSegmentedColormap.from_list("", ["#FFFFFF","#56B4E9"])
|
106 |
cmap_sum = matplotlib.colors.LinearSegmentedColormap.from_list("", ["#FFFFFF","#F0E442"])
|
107 |
|
108 |
-
schedule_df = schedule_df.merge(right=team_abv,left_on='game_away',right_on='team_name',how='inner',suffixes=['','_away'])
|
109 |
-
schedule_df = schedule_df.merge(right=team_abv,left_on='game_home',right_on='team_name',how='inner',suffixes=['','_home'])
|
110 |
-
schedule_df['away_sym'] = '@'
|
111 |
-
schedule_df['home_sym'] = 'vs'
|
|
|
112 |
|
113 |
|
114 |
#if not os.path.isfile('standings/standings_'+str(date.today())+'.csv'):
|
@@ -126,7 +137,8 @@ standings_df.Team = standings_df.Team.str.strip('*')
|
|
126 |
standings_df = standings_df.merge(right=team_abv,left_on='Team',right_on='team_name')
|
127 |
|
128 |
schedule_stack = pd.DataFrame()
|
129 |
-
schedule_stack['date'] = pd.to_datetime(list(schedule_df['game_date'])+list(schedule_df['game_date']))
|
|
|
130 |
schedule_stack['team'] = list(schedule_df['team_name'])+list(schedule_df['team_name_home'])
|
131 |
schedule_stack['team_abv'] = list(schedule_df['team_abv'])+list(schedule_df['team_abv_home'])
|
132 |
schedule_stack['symbol'] = list(schedule_df['away_sym'])+list(schedule_df['home_sym'])
|
|
|
68 |
import pandas as pd
|
69 |
|
70 |
# # Loop over the counter and format the API call
|
71 |
+
# r = requests.get('https://statsapi.web.nhl.com/api/v1/schedule?startDate=2023-10-01&endDate=2024-06-01')
|
72 |
+
# schedule = r.json()
|
73 |
|
74 |
+
# def flatten(t):
|
75 |
+
# return [item for sublist in t for item in sublist]
|
76 |
|
77 |
+
# game_id = flatten([[x['gamePk'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
78 |
+
# game_date = flatten([[x['gameDate'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
79 |
+
# game_home = flatten([[x['teams']['home']['team']['name'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
80 |
+
# game_away = flatten([[x['teams']['away']['team']['name'] for x in schedule['dates'][y]['games']] for y in range(0,len(schedule['dates']))])
|
81 |
|
82 |
+
# schedule_df = pd.DataFrame(data={'game_id': game_id, 'game_date' : game_date, 'game_home' : game_home, 'game_away' : game_away})
|
83 |
+
# schedule_df.game_date = pd.to_datetime(schedule_df['game_date']).dt.tz_convert(tz='US/Eastern').dt.date
|
84 |
+
# schedule_df = schedule_df.replace('Montréal Canadiens','Montreal Canadiens')
|
85 |
+
# schedule_df.head()
|
86 |
+
|
87 |
+
schedule = pd.read_html('https://www.hockey-reference.com/leagues/NHL_2024_games.html')[0]
|
88 |
+
#schedule.to_csv('schedule/schedule_'+str(date.today())+'.csv')
|
89 |
+
#schedule = pd.read_csv('schedule/schedule_'+str(date.today())+'.csv')
|
90 |
+
schedule = schedule.replace('St Louis Blues','St. Louis Blues')
|
91 |
+
|
92 |
+
schedule_df = schedule.merge(right=team_abv,left_on='Visitor',right_on='team_name',how='inner',suffixes=['','_away'])
|
93 |
+
schedule_df = schedule_df.merge(right=team_abv,left_on='Home',right_on='team_name',how='inner',suffixes=['','_home'])
|
94 |
+
schedule_df['away_sym'] = '@'
|
95 |
+
schedule_df['home_sym'] = 'vs'
|
96 |
|
97 |
team_abv = pd.read_csv('team_abv.csv')
|
98 |
yahoo_weeks = pd.read_csv('yahoo_weeks.csv')
|
|
|
115 |
cmap_back = matplotlib.colors.LinearSegmentedColormap.from_list("", ["#FFFFFF","#56B4E9"])
|
116 |
cmap_sum = matplotlib.colors.LinearSegmentedColormap.from_list("", ["#FFFFFF","#F0E442"])
|
117 |
|
118 |
+
# schedule_df = schedule_df.merge(right=team_abv,left_on='game_away',right_on='team_name',how='inner',suffixes=['','_away'])
|
119 |
+
# schedule_df = schedule_df.merge(right=team_abv,left_on='game_home',right_on='team_name',how='inner',suffixes=['','_home'])
|
120 |
+
# schedule_df['away_sym'] = '@'
|
121 |
+
# schedule_df['home_sym'] = 'vs'
|
122 |
+
|
123 |
|
124 |
|
125 |
#if not os.path.isfile('standings/standings_'+str(date.today())+'.csv'):
|
|
|
137 |
standings_df = standings_df.merge(right=team_abv,left_on='Team',right_on='team_name')
|
138 |
|
139 |
schedule_stack = pd.DataFrame()
|
140 |
+
# schedule_stack['date'] = pd.to_datetime(list(schedule_df['game_date'])+list(schedule_df['game_date']))
|
141 |
+
schedule_stack['date'] = pd.to_datetime(list(schedule_df['Date'])+list(schedule_df['Date']))
|
142 |
schedule_stack['team'] = list(schedule_df['team_name'])+list(schedule_df['team_name_home'])
|
143 |
schedule_stack['team_abv'] = list(schedule_df['team_abv'])+list(schedule_df['team_abv_home'])
|
144 |
schedule_stack['symbol'] = list(schedule_df['away_sym'])+list(schedule_df['home_sym'])
|