Spaces:
Running
Running
James McCool
commited on
Commit
·
3fdce20
1
Parent(s):
a819472
added some filters to lineups
Browse files
app.py
CHANGED
@@ -146,7 +146,7 @@ dk_lineups = init_DK_lineups()
|
|
146 |
fd_lineups = init_FD_lineups()
|
147 |
t_stamp = f"Last Update: " + str(timestamp) + f" CST"
|
148 |
|
149 |
-
tab1, tab2 = st.tabs(['Range of Outcomes', '
|
150 |
|
151 |
with tab1:
|
152 |
|
@@ -222,6 +222,9 @@ with tab2:
|
|
222 |
site_var1 = st.radio("What site are you working with?", ('Draftkings', 'Fanduel'))
|
223 |
if site_var1 == 'Draftkings':
|
224 |
raw_baselines = dk_raw
|
|
|
|
|
|
|
225 |
column_names = dk_columns
|
226 |
|
227 |
player_var1 = st.radio("Do you want a frame with specific Players?", ('Full Slate', 'Specific Players'), key='player_var1')
|
@@ -229,16 +232,31 @@ with tab2:
|
|
229 |
player_var2 = st.multiselect('Which players do you want?', options = dk_raw['Player'].unique())
|
230 |
elif player_var1 == 'Full Slate':
|
231 |
player_var2 = dk_raw.Player.values.tolist()
|
|
|
|
|
|
|
|
|
|
|
|
|
232 |
|
233 |
elif site_var1 == 'Fanduel':
|
234 |
raw_baselines = fd_raw
|
|
|
|
|
235 |
column_names = fd_columns
|
236 |
|
237 |
player_var1 = st.radio("Do you want a frame with specific Players?", ('Full Slate', 'Specific Players'), key='player_var1')
|
238 |
if player_var1 == 'Specific Players':
|
239 |
-
player_var2 = st.multiselect('Which players do you want?', options =
|
240 |
elif player_var1 == 'Full Slate':
|
241 |
-
player_var2 =
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
242 |
|
243 |
|
244 |
if st.button("Prepare data export", key='data_export'):
|
@@ -254,19 +272,47 @@ with tab2:
|
|
254 |
if site_var1 == 'Draftkings':
|
255 |
if 'working_seed' in st.session_state:
|
256 |
st.session_state.working_seed = st.session_state.working_seed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
257 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
258 |
elif 'working_seed' not in st.session_state:
|
259 |
st.session_state.working_seed = dk_lineups.copy()
|
260 |
st.session_state.working_seed = st.session_state.working_seed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
261 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
262 |
|
263 |
elif site_var1 == 'Fanduel':
|
264 |
if 'working_seed' in st.session_state:
|
265 |
st.session_state.working_seed = st.session_state.working_seed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
266 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
267 |
elif 'working_seed' not in st.session_state:
|
268 |
st.session_state.working_seed = fd_lineups.copy()
|
269 |
st.session_state.working_seed = st.session_state.working_seed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
270 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
271 |
|
272 |
with st.container():
|
|
|
146 |
fd_lineups = init_FD_lineups()
|
147 |
t_stamp = f"Last Update: " + str(timestamp) + f" CST"
|
148 |
|
149 |
+
tab1, tab2 = st.tabs(['Range of Outcomes', 'Optimals'])
|
150 |
|
151 |
with tab1:
|
152 |
|
|
|
222 |
site_var1 = st.radio("What site are you working with?", ('Draftkings', 'Fanduel'))
|
223 |
if site_var1 == 'Draftkings':
|
224 |
raw_baselines = dk_raw
|
225 |
+
# Get the minimum and maximum ownership values from dk_lineups
|
226 |
+
min_own = dk_lineups['Own'].min()
|
227 |
+
max_own = dk_lineups['Own'].max()
|
228 |
column_names = dk_columns
|
229 |
|
230 |
player_var1 = st.radio("Do you want a frame with specific Players?", ('Full Slate', 'Specific Players'), key='player_var1')
|
|
|
232 |
player_var2 = st.multiselect('Which players do you want?', options = dk_raw['Player'].unique())
|
233 |
elif player_var1 == 'Full Slate':
|
234 |
player_var2 = dk_raw.Player.values.tolist()
|
235 |
+
|
236 |
+
own_var_low, own_var_high = st.slider("Select ownership range",
|
237 |
+
min_value=float(min_own),
|
238 |
+
max_value=float(max_own),
|
239 |
+
value=(float(min_own), float(max_own)),
|
240 |
+
step=10)
|
241 |
|
242 |
elif site_var1 == 'Fanduel':
|
243 |
raw_baselines = fd_raw
|
244 |
+
min_own = fd_lineups['Own'].min()
|
245 |
+
max_own = fd_lineups['Own'].max()
|
246 |
column_names = fd_columns
|
247 |
|
248 |
player_var1 = st.radio("Do you want a frame with specific Players?", ('Full Slate', 'Specific Players'), key='player_var1')
|
249 |
if player_var1 == 'Specific Players':
|
250 |
+
player_var2 = st.multiselect('Which players do you want?', options = fd_raw['Player'].unique())
|
251 |
elif player_var1 == 'Full Slate':
|
252 |
+
player_var2 = fd_raw.Player.values.tolist()
|
253 |
+
|
254 |
+
own_var_low, own_var_high = st.slider("Select ownership range",
|
255 |
+
min_value=float(min_own),
|
256 |
+
max_value=float(max_own),
|
257 |
+
value=(float(min_own), float(max_own)),
|
258 |
+
step=10)
|
259 |
+
|
260 |
|
261 |
|
262 |
if st.button("Prepare data export", key='data_export'):
|
|
|
272 |
if site_var1 == 'Draftkings':
|
273 |
if 'working_seed' in st.session_state:
|
274 |
st.session_state.working_seed = st.session_state.working_seed
|
275 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] >= own_var_low]
|
276 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] <= own_var_high]
|
277 |
+
# Create a mask to check if any column contains a player from player_var2
|
278 |
+
player_mask = st.session_state.working_seed.apply(lambda row: any(player in str(cell) for player in player_var2 for cell in row), axis=1)
|
279 |
+
|
280 |
+
# Apply the mask to filter the DataFrame
|
281 |
+
st.session_state.working_seed = st.session_state.working_seed[player_mask]
|
282 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
283 |
elif 'working_seed' not in st.session_state:
|
284 |
st.session_state.working_seed = dk_lineups.copy()
|
285 |
st.session_state.working_seed = st.session_state.working_seed
|
286 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] >= own_var_low]
|
287 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] <= own_var_high]
|
288 |
+
# Create a mask to check if any column contains a player from player_var2
|
289 |
+
player_mask = st.session_state.working_seed.apply(lambda row: any(player in str(cell) for player in player_var2 for cell in row), axis=1)
|
290 |
+
|
291 |
+
# Apply the mask to filter the DataFrame
|
292 |
+
st.session_state.working_seed = st.session_state.working_seed[player_mask]
|
293 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
294 |
|
295 |
elif site_var1 == 'Fanduel':
|
296 |
if 'working_seed' in st.session_state:
|
297 |
st.session_state.working_seed = st.session_state.working_seed
|
298 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] >= own_var_low]
|
299 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] <= own_var_high]
|
300 |
+
# Create a mask to check if any column contains a player from player_var2
|
301 |
+
player_mask = st.session_state.working_seed.apply(lambda row: any(player in str(cell) for player in player_var2 for cell in row), axis=1)
|
302 |
+
|
303 |
+
# Apply the mask to filter the DataFrame
|
304 |
+
st.session_state.working_seed = st.session_state.working_seed[player_mask]
|
305 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
306 |
elif 'working_seed' not in st.session_state:
|
307 |
st.session_state.working_seed = fd_lineups.copy()
|
308 |
st.session_state.working_seed = st.session_state.working_seed
|
309 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] >= own_var_low]
|
310 |
+
st.session_state.working_seed = st.session_state.working_seed[st.session_state.working_seed['Own'] <= own_var_high]
|
311 |
+
# Create a mask to check if any column contains a player from player_var2
|
312 |
+
player_mask = st.session_state.working_seed.apply(lambda row: any(player in str(cell) for player in player_var2 for cell in row), axis=1)
|
313 |
+
|
314 |
+
# Apply the mask to filter the DataFrame
|
315 |
+
st.session_state.working_seed = st.session_state.working_seed[player_mask]
|
316 |
st.session_state.data_export_display = pd.DataFrame(st.session_state.working_seed[0:151], columns=column_names)
|
317 |
|
318 |
with st.container():
|