Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -305,10 +305,10 @@ with tab2:
|
|
305 |
st.session_state.Sim_Winner_Display = Sim_Winner_Frame.copy()
|
306 |
|
307 |
if sim_site_var1 == 'Draftkings':
|
308 |
-
st.session_state.player_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:
|
309 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
310 |
-
elif sim_site_var1 == '
|
311 |
-
st.session_state.player_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:
|
312 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
313 |
st.session_state.player_freq['Freq'] = st.session_state.player_freq['Freq'].astype(int)
|
314 |
st.session_state.player_freq['Position'] = st.session_state.player_freq['Player'].map(maps_dict['Pos_map'])
|
@@ -321,7 +321,7 @@ with tab2:
|
|
321 |
if sim_site_var1 == 'Draftkings':
|
322 |
st.session_state.sp_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:2].values, return_counts=True)),
|
323 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
324 |
-
elif sim_site_var1 == '
|
325 |
st.session_state.sp_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:1].values, return_counts=True)),
|
326 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
327 |
st.session_state.sp_freq['Freq'] = st.session_state.sp_freq['Freq'].astype(int)
|
@@ -332,6 +332,24 @@ with tab2:
|
|
332 |
st.session_state.sp_freq['Edge'] = st.session_state.sp_freq['Exposure'] - st.session_state.sp_freq['Proj Own']
|
333 |
st.session_state.sp_freq['Team'] = st.session_state.sp_freq['Player'].map(maps_dict['Team_map'])
|
334 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
335 |
with st.container():
|
336 |
st.dataframe(st.session_state.Sim_Winner_Frame)
|
337 |
|
@@ -345,6 +363,7 @@ with tab2:
|
|
345 |
data=st.session_state.player_freq.to_csv().encode('utf-8'),
|
346 |
file_name='player_freq_export.csv',
|
347 |
mime='text/csv',
|
|
|
348 |
)
|
349 |
with tab2:
|
350 |
if 'sp_freq' in st.session_state:
|
@@ -354,6 +373,27 @@ with tab2:
|
|
354 |
data=st.session_state.sp_freq.to_csv().encode('utf-8'),
|
355 |
file_name='player_freq_export.csv',
|
356 |
mime='text/csv',
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
357 |
)
|
358 |
else:
|
359 |
if sim_site_var1 == 'Draftkings':
|
@@ -391,8 +431,6 @@ with tab2:
|
|
391 |
# Sorting
|
392 |
st.session_state.Sim_Winner_Frame = Sim_Winner_Frame.sort_values(by=['win_count', 'GPP_Proj'], ascending= [False, False]).copy().drop_duplicates(subset='unique_id').head(100)
|
393 |
st.session_state.Sim_Winner_Frame.drop(columns='unique_id', inplace=True)
|
394 |
-
|
395 |
-
st.dataframe(st.session_state.Sim_Winner_Frame)
|
396 |
|
397 |
# Data Copying
|
398 |
st.session_state.Sim_Winner_Export = Sim_Winner_Frame.copy()
|
@@ -459,7 +497,7 @@ with tab2:
|
|
459 |
data=st.session_state.player_freq.to_csv().encode('utf-8'),
|
460 |
file_name='player_freq_export.csv',
|
461 |
mime='text/csv',
|
462 |
-
key='
|
463 |
)
|
464 |
with tab2:
|
465 |
if 'sp_freq' in st.session_state:
|
@@ -469,7 +507,7 @@ with tab2:
|
|
469 |
data=st.session_state.sp_freq.to_csv().encode('utf-8'),
|
470 |
file_name='player_freq_export.csv',
|
471 |
mime='text/csv',
|
472 |
-
key='
|
473 |
)
|
474 |
with tab3:
|
475 |
if 'team_freq' in st.session_state:
|
@@ -479,7 +517,7 @@ with tab2:
|
|
479 |
data=st.session_state.team_freq.to_csv().encode('utf-8'),
|
480 |
file_name='player_freq_export.csv',
|
481 |
mime='text/csv',
|
482 |
-
key='
|
483 |
)
|
484 |
with tab4:
|
485 |
if 'stack_freq' in st.session_state:
|
@@ -489,5 +527,5 @@ with tab2:
|
|
489 |
data=st.session_state.stack_freq.to_csv().encode('utf-8'),
|
490 |
file_name='player_freq_export.csv',
|
491 |
mime='text/csv',
|
492 |
-
key='
|
493 |
)
|
|
|
305 |
st.session_state.Sim_Winner_Display = Sim_Winner_Frame.copy()
|
306 |
|
307 |
if sim_site_var1 == 'Draftkings':
|
308 |
+
st.session_state.player_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:10].values, return_counts=True)),
|
309 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
310 |
+
elif sim_site_var1 == 'Fanduel':
|
311 |
+
st.session_state.player_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:9].values, return_counts=True)),
|
312 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
313 |
st.session_state.player_freq['Freq'] = st.session_state.player_freq['Freq'].astype(int)
|
314 |
st.session_state.player_freq['Position'] = st.session_state.player_freq['Player'].map(maps_dict['Pos_map'])
|
|
|
321 |
if sim_site_var1 == 'Draftkings':
|
322 |
st.session_state.sp_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:2].values, return_counts=True)),
|
323 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
324 |
+
elif sim_site_var1 == 'Fanduel':
|
325 |
st.session_state.sp_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,0:1].values, return_counts=True)),
|
326 |
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
327 |
st.session_state.sp_freq['Freq'] = st.session_state.sp_freq['Freq'].astype(int)
|
|
|
332 |
st.session_state.sp_freq['Edge'] = st.session_state.sp_freq['Exposure'] - st.session_state.sp_freq['Proj Own']
|
333 |
st.session_state.sp_freq['Team'] = st.session_state.sp_freq['Player'].map(maps_dict['Team_map'])
|
334 |
|
335 |
+
if sim_site_var1 == 'Draftkings':
|
336 |
+
st.session_state.team_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,12:13].values, return_counts=True)),
|
337 |
+
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
338 |
+
elif sim_site_var1 == 'Fanduel':
|
339 |
+
st.session_state.team_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,11:12].values, return_counts=True)),
|
340 |
+
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
341 |
+
st.session_state.team_freq['Freq'] = st.session_state.team_freq['Freq'].astype(int)
|
342 |
+
st.session_state.team_freq['Exposure'] = st.session_state.team_freq['Freq']/(1000)
|
343 |
+
|
344 |
+
if sim_site_var1 == 'Draftkings':
|
345 |
+
st.session_state.stack_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,13:14].values, return_counts=True)),
|
346 |
+
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
347 |
+
elif sim_site_var1 == 'Fanduel':
|
348 |
+
st.session_state.stack_freq = pd.DataFrame(np.column_stack(np.unique(st.session_state.Sim_Winner_Display.iloc[:,12:13].values, return_counts=True)),
|
349 |
+
columns=['Player','Freq']).sort_values('Freq', ascending=False).reset_index(drop=True)
|
350 |
+
st.session_state.stack_freq['Freq'] = st.session_state.stack_freq['Freq'].astype(int)
|
351 |
+
st.session_state.stack_freq['Exposure'] = st.session_state.stack_freq['Freq']/(1000)
|
352 |
+
|
353 |
with st.container():
|
354 |
st.dataframe(st.session_state.Sim_Winner_Frame)
|
355 |
|
|
|
363 |
data=st.session_state.player_freq.to_csv().encode('utf-8'),
|
364 |
file_name='player_freq_export.csv',
|
365 |
mime='text/csv',
|
366 |
+
key='overall'
|
367 |
)
|
368 |
with tab2:
|
369 |
if 'sp_freq' in st.session_state:
|
|
|
373 |
data=st.session_state.sp_freq.to_csv().encode('utf-8'),
|
374 |
file_name='player_freq_export.csv',
|
375 |
mime='text/csv',
|
376 |
+
key='sp'
|
377 |
+
)
|
378 |
+
with tab3:
|
379 |
+
if 'team_freq' in st.session_state:
|
380 |
+
st.dataframe(st.session_state.team_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(percentages_format, precision=2), use_container_width = True)
|
381 |
+
st.download_button(
|
382 |
+
label="Export Exposures",
|
383 |
+
data=st.session_state.team_freq.to_csv().encode('utf-8'),
|
384 |
+
file_name='player_freq_export.csv',
|
385 |
+
mime='text/csv',
|
386 |
+
key='team'
|
387 |
+
)
|
388 |
+
with tab4:
|
389 |
+
if 'stack_freq' in st.session_state:
|
390 |
+
st.dataframe(st.session_state.stack_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(percentages_format, precision=2), use_container_width = True)
|
391 |
+
st.download_button(
|
392 |
+
label="Export Exposures",
|
393 |
+
data=st.session_state.stack_freq.to_csv().encode('utf-8'),
|
394 |
+
file_name='player_freq_export.csv',
|
395 |
+
mime='text/csv',
|
396 |
+
key='stack'
|
397 |
)
|
398 |
else:
|
399 |
if sim_site_var1 == 'Draftkings':
|
|
|
431 |
# Sorting
|
432 |
st.session_state.Sim_Winner_Frame = Sim_Winner_Frame.sort_values(by=['win_count', 'GPP_Proj'], ascending= [False, False]).copy().drop_duplicates(subset='unique_id').head(100)
|
433 |
st.session_state.Sim_Winner_Frame.drop(columns='unique_id', inplace=True)
|
|
|
|
|
434 |
|
435 |
# Data Copying
|
436 |
st.session_state.Sim_Winner_Export = Sim_Winner_Frame.copy()
|
|
|
497 |
data=st.session_state.player_freq.to_csv().encode('utf-8'),
|
498 |
file_name='player_freq_export.csv',
|
499 |
mime='text/csv',
|
500 |
+
key='overall'
|
501 |
)
|
502 |
with tab2:
|
503 |
if 'sp_freq' in st.session_state:
|
|
|
507 |
data=st.session_state.sp_freq.to_csv().encode('utf-8'),
|
508 |
file_name='player_freq_export.csv',
|
509 |
mime='text/csv',
|
510 |
+
key='sp'
|
511 |
)
|
512 |
with tab3:
|
513 |
if 'team_freq' in st.session_state:
|
|
|
517 |
data=st.session_state.team_freq.to_csv().encode('utf-8'),
|
518 |
file_name='player_freq_export.csv',
|
519 |
mime='text/csv',
|
520 |
+
key='team'
|
521 |
)
|
522 |
with tab4:
|
523 |
if 'stack_freq' in st.session_state:
|
|
|
527 |
data=st.session_state.stack_freq.to_csv().encode('utf-8'),
|
528 |
file_name='player_freq_export.csv',
|
529 |
mime='text/csv',
|
530 |
+
key='stack'
|
531 |
)
|