James McCool commited on
Commit
dbcb21f
·
1 Parent(s): 5729f79

Refactor league data loading and simplify initialization process

Browse files
Files changed (1) hide show
  1. app.py +13 -27
app.py CHANGED
@@ -40,16 +40,14 @@ def init_conn():
40
  client = pymongo.MongoClient(uri, retryWrites=True, serverSelectionTimeoutMS=500000)
41
  db = client["League_of_Legends"]
42
 
43
- LCK_Data = st.secrets['LOL_Data']
44
- LEC_Data = st.secrets['LEC_Data']
45
- LCS_Data = st.secrets['LCS_Data']
46
 
47
  gc = gspread.service_account_from_dict(credentials)
48
  gc2 = gspread.service_account_from_dict(credentials2)
49
 
50
- return gc, gc2, db, LCK_Data, LEC_Data, LCS_Data
51
 
52
- gcservice_account, gcservice_account2, db, LCK_Data, LEC_Data, LCS_Data = init_conn()
53
 
54
  percentages_format = {'Exposure': '{:.2%}'}
55
  freq_format = {'Exposure': '{:.2%}', 'Proj Own': '{:.2%}', 'Edge': '{:.2%}'}
@@ -77,25 +75,12 @@ def init_DK_seed_frames():
77
  return DK_seed
78
 
79
  @st.cache_data(ttl = 599)
80
- def init_baselines(league_data):
81
-
82
- if league_data == 'LCK':
83
- try:
84
- sh = gcservice_account.open_by_url(LCK_Data)
85
- except:
86
- sh = gcservice_account2.open_by_url(LCK_Data)
87
- elif league_data == 'LEC':
88
- try:
89
- sh = gcservice_account.open_by_url(LEC_Data)
90
- except:
91
- sh = gcservice_account2.open_by_url(LEC_Data)
92
- elif league_data == 'LCS':
93
- try:
94
- sh = gcservice_account.open_by_url(LCS_Data)
95
- except:
96
- sh = gcservice_account2.open_by_url(LCS_Data)
97
 
98
-
99
  worksheet = sh.worksheet('ROO')
100
  load_display = pd.DataFrame(worksheet.get_all_records())
101
  load_display.replace('', np.nan, inplace=True)
@@ -170,12 +155,12 @@ with tab2:
170
  for key in st.session_state.keys():
171
  del st.session_state[key]
172
  DK_seed = init_DK_seed_frames()
173
- dk_raw = init_baselines('LCK')
174
 
175
  slate_var1 = st.radio("Which data are you loading?", ('LCK', 'LEC', 'LCS'))
176
  site_var1 = st.radio("What site are you working with?", ('Draftkings'))
177
  if site_var1 == 'Draftkings':
178
- raw_baselines = init_baselines(slate_var1)
179
  column_names = dk_columns
180
 
181
  team_var1 = st.radio("Do you want a frame with specific teams?", ('Full Slate', 'Specific Teams'), key='team_var1')
@@ -224,17 +209,18 @@ with tab1:
224
  for key in st.session_state.keys():
225
  del st.session_state[key]
226
  DK_seed = init_DK_seed_frames()
227
- dk_raw = init_baselines('LCK')
228
  sim_slate_var1 = st.radio("Which data are you loading?", ('LCK', 'LEC', 'LCS'), key='sim_slate_var1')
229
 
230
  sim_site_var1 = st.radio("What site are you working with?", ('Draftkings'), key='sim_site_var1')
231
  if sim_site_var1 == 'Draftkings':
232
- raw_baselines = init_baselines(sim_slate_var1)
233
  column_names = dk_columns
234
 
235
  contest_var1 = st.selectbox("What contest size are you simulating?", ('Small', 'Medium', 'Large', 'Custom'))
236
  if contest_var1 == 'Small':
237
  Contest_Size = 1000
 
238
  elif contest_var1 == 'Medium':
239
  Contest_Size = 5000
240
  elif contest_var1 == 'Large':
 
40
  client = pymongo.MongoClient(uri, retryWrites=True, serverSelectionTimeoutMS=500000)
41
  db = client["League_of_Legends"]
42
 
43
+ LOL_Data = st.secrets['LOL_Data']
 
 
44
 
45
  gc = gspread.service_account_from_dict(credentials)
46
  gc2 = gspread.service_account_from_dict(credentials2)
47
 
48
+ return gc, gc2, db, LOL_Data
49
 
50
+ gcservice_account, gcservice_account2, db, LOL_Data = init_conn()
51
 
52
  percentages_format = {'Exposure': '{:.2%}'}
53
  freq_format = {'Exposure': '{:.2%}', 'Proj Own': '{:.2%}', 'Edge': '{:.2%}'}
 
75
  return DK_seed
76
 
77
  @st.cache_data(ttl = 599)
78
+ def init_baselines():
79
+ try:
80
+ sh = gcservice_account.open_by_url(LOL_Data)
81
+ except:
82
+ sh = gcservice_account2.open_by_url(LOL_Data)
 
 
 
 
 
 
 
 
 
 
 
 
83
 
 
84
  worksheet = sh.worksheet('ROO')
85
  load_display = pd.DataFrame(worksheet.get_all_records())
86
  load_display.replace('', np.nan, inplace=True)
 
155
  for key in st.session_state.keys():
156
  del st.session_state[key]
157
  DK_seed = init_DK_seed_frames()
158
+ dk_raw = init_baselines()
159
 
160
  slate_var1 = st.radio("Which data are you loading?", ('LCK', 'LEC', 'LCS'))
161
  site_var1 = st.radio("What site are you working with?", ('Draftkings'))
162
  if site_var1 == 'Draftkings':
163
+ raw_baselines = dk_raw[dk_raw['league'] == slate_var1]
164
  column_names = dk_columns
165
 
166
  team_var1 = st.radio("Do you want a frame with specific teams?", ('Full Slate', 'Specific Teams'), key='team_var1')
 
209
  for key in st.session_state.keys():
210
  del st.session_state[key]
211
  DK_seed = init_DK_seed_frames()
212
+ dk_raw = init_baselines()
213
  sim_slate_var1 = st.radio("Which data are you loading?", ('LCK', 'LEC', 'LCS'), key='sim_slate_var1')
214
 
215
  sim_site_var1 = st.radio("What site are you working with?", ('Draftkings'), key='sim_site_var1')
216
  if sim_site_var1 == 'Draftkings':
217
+ raw_baselines = dk_raw[dk_raw['league'] == sim_slate_var1]
218
  column_names = dk_columns
219
 
220
  contest_var1 = st.selectbox("What contest size are you simulating?", ('Small', 'Medium', 'Large', 'Custom'))
221
  if contest_var1 == 'Small':
222
  Contest_Size = 1000
223
+
224
  elif contest_var1 == 'Medium':
225
  Contest_Size = 5000
226
  elif contest_var1 == 'Large':