Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -840,6 +840,8 @@ with tab2:
|
|
840 |
st.info(t_stamp)
|
841 |
if st.button("Load/Reset Data", key='reset1'):
|
842 |
st.cache_data.clear()
|
|
|
|
|
843 |
dk_roo_raw = load_dk_player_projections()
|
844 |
fd_roo_raw = load_fd_player_projections()
|
845 |
t_stamp = f"Last Update: " + str(dk_roo_raw['timestamp'][0]) + f" CST"
|
@@ -891,7 +893,20 @@ with tab2:
|
|
891 |
st.session_state.Sim_Winner_Frame = pd.DataFrame(columns=['QB', 'RB1', 'RB2', 'WR1', 'WR2', 'WR3', 'TE', 'FLEX', 'DST', 'User/Field', 'Salary', 'Projection', 'Own', 'Fantasy', 'GPP_Proj'])
|
892 |
if 'Sim_Winner_Export' not in st.session_state:
|
893 |
st.session_state.Sim_Winner_Export = pd.DataFrame(columns=['QB', 'RB1', 'RB2', 'WR1', 'WR2', 'WR3', 'TE', 'FLEX', 'DST', 'User/Field', 'Salary', 'Projection', 'Own', 'Fantasy', 'GPP_Proj'])
|
894 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
895 |
with col2:
|
896 |
with st.container():
|
897 |
if st.button("Simulate Contest"):
|
@@ -1340,8 +1355,16 @@ with tab2:
|
|
1340 |
|
1341 |
with st.container():
|
1342 |
simulate_container = st.empty()
|
1343 |
-
|
1344 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1345 |
st.dataframe(st.session_state.Sim_Winner_Frame.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').background_gradient(cmap='RdYlGn_r', subset=['Own']).format(precision=2), use_container_width = True)
|
1346 |
|
1347 |
st.download_button(
|
@@ -1358,7 +1381,7 @@ with tab2:
|
|
1358 |
st.dataframe(player_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1359 |
st.download_button(
|
1360 |
label="Export Exposures",
|
1361 |
-
data=convert_df_to_csv(player_freq),
|
1362 |
file_name='player_freq_export.csv',
|
1363 |
mime='text/csv',
|
1364 |
)
|
@@ -1366,7 +1389,7 @@ with tab2:
|
|
1366 |
st.dataframe(qb_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1367 |
st.download_button(
|
1368 |
label="Export Exposures",
|
1369 |
-
data=convert_df_to_csv(qb_freq),
|
1370 |
file_name='qb_freq_export.csv',
|
1371 |
mime='text/csv',
|
1372 |
)
|
@@ -1374,7 +1397,7 @@ with tab2:
|
|
1374 |
st.dataframe(rb_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1375 |
st.download_button(
|
1376 |
label="Export Exposures",
|
1377 |
-
data=convert_df_to_csv(rb_freq),
|
1378 |
file_name='rb_freq_export.csv',
|
1379 |
mime='text/csv',
|
1380 |
)
|
@@ -1382,7 +1405,7 @@ with tab2:
|
|
1382 |
st.dataframe(wr_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1383 |
st.download_button(
|
1384 |
label="Export Exposures",
|
1385 |
-
data=convert_df_to_csv(wr_freq),
|
1386 |
file_name='wr_freq_export.csv',
|
1387 |
mime='text/csv',
|
1388 |
)
|
@@ -1390,7 +1413,7 @@ with tab2:
|
|
1390 |
st.dataframe(te_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1391 |
st.download_button(
|
1392 |
label="Export Exposures",
|
1393 |
-
data=convert_df_to_csv(te_freq),
|
1394 |
file_name='te_freq_export.csv',
|
1395 |
mime='text/csv',
|
1396 |
)
|
@@ -1398,7 +1421,7 @@ with tab2:
|
|
1398 |
st.dataframe(flex_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1399 |
st.download_button(
|
1400 |
label="Export Exposures",
|
1401 |
-
data=convert_df_to_csv(flex_freq),
|
1402 |
file_name='flex_freq_export.csv',
|
1403 |
mime='text/csv',
|
1404 |
)
|
@@ -1406,7 +1429,7 @@ with tab2:
|
|
1406 |
st.dataframe(dst_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1407 |
st.download_button(
|
1408 |
label="Export Exposures",
|
1409 |
-
data=convert_df_to_csv(dst_freq),
|
1410 |
file_name='dst_freq_export.csv',
|
1411 |
mime='text/csv',
|
1412 |
)
|
|
|
840 |
st.info(t_stamp)
|
841 |
if st.button("Load/Reset Data", key='reset1'):
|
842 |
st.cache_data.clear()
|
843 |
+
for key in st.session_state.keys():
|
844 |
+
del st.session_state[key]
|
845 |
dk_roo_raw = load_dk_player_projections()
|
846 |
fd_roo_raw = load_fd_player_projections()
|
847 |
t_stamp = f"Last Update: " + str(dk_roo_raw['timestamp'][0]) + f" CST"
|
|
|
893 |
st.session_state.Sim_Winner_Frame = pd.DataFrame(columns=['QB', 'RB1', 'RB2', 'WR1', 'WR2', 'WR3', 'TE', 'FLEX', 'DST', 'User/Field', 'Salary', 'Projection', 'Own', 'Fantasy', 'GPP_Proj'])
|
894 |
if 'Sim_Winner_Export' not in st.session_state:
|
895 |
st.session_state.Sim_Winner_Export = pd.DataFrame(columns=['QB', 'RB1', 'RB2', 'WR1', 'WR2', 'WR3', 'TE', 'FLEX', 'DST', 'User/Field', 'Salary', 'Projection', 'Own', 'Fantasy', 'GPP_Proj'])
|
896 |
+
if 'player_freq' not in st.session_state:
|
897 |
+
st.session_state.player_freq = pd.DataFrame(columns=['Player', 'Position', 'Team', 'Salary', 'Proj Own', 'Exposure', 'Edge'])
|
898 |
+
if 'qb_freq' not in st.session_state:
|
899 |
+
st.session_state.qb_freq = pd.DataFrame(columns=['Player', 'Position', 'Team', 'Salary', 'Proj Own', 'Exposure', 'Edge'])
|
900 |
+
if 'rb_freq' not in st.session_state:
|
901 |
+
st.session_state.rb_freq = pd.DataFrame(columns=['Player', 'Position', 'Team', 'Salary', 'Proj Own', 'Exposure', 'Edge'])
|
902 |
+
if 'wr_freq' not in st.session_state:
|
903 |
+
st.session_state.wr_freq = pd.DataFrame(columns=['Player', 'Position', 'Team', 'Salary', 'Proj Own', 'Exposure', 'Edge'])
|
904 |
+
if 'te_freq' not in st.session_state:
|
905 |
+
st.session_state.te_freq = pd.DataFrame(columns=['Player', 'Position', 'Team', 'Salary', 'Proj Own', 'Exposure', 'Edge'])
|
906 |
+
if 'flex_freq' not in st.session_state:
|
907 |
+
st.session_state.flex_freq = pd.DataFrame(columns=['Player', 'Position', 'Team', 'Salary', 'Proj Own', 'Exposure', 'Edge'])
|
908 |
+
if 'dst_freq' not in st.session_state:
|
909 |
+
st.session_state.dst_freq = pd.DataFrame(columns=['Player', 'Position', 'Team', 'Salary', 'Proj Own', 'Exposure', 'Edge'])
|
910 |
with col2:
|
911 |
with st.container():
|
912 |
if st.button("Simulate Contest"):
|
|
|
1355 |
|
1356 |
with st.container():
|
1357 |
simulate_container = st.empty()
|
1358 |
+
player_split_var2 = st.radio("Are you wanting to isolate any lineups with specific players?", ('Full Players', 'Specific Players'))
|
1359 |
+
if player_split_var2 == 'Specific Players':
|
1360 |
+
find_var2 = st.multiselect('Which players must be included in the lineups?', options = player_freq['Player'].unique())
|
1361 |
+
elif player_split_var2 == 'Full Players':
|
1362 |
+
find_var2 = player_freq.Player.values.tolist()
|
1363 |
+
|
1364 |
+
if player_split_var2 == 'Specific Players':
|
1365 |
+
st.session_state.Sim_Winner_Frame = st.session_state.Sim_Winner_Frame[np.equal.outer(st.session_state.Sim_Winner_Frame.to_numpy(copy=False), find_var2).any(axis=1).all(axis=1)]
|
1366 |
+
elif player_split_var2 == 'Full Players':
|
1367 |
+
st.session_state.Sim_Winner_Frame = st.session_state.Sim_Winner_Frame
|
1368 |
st.dataframe(st.session_state.Sim_Winner_Frame.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').background_gradient(cmap='RdYlGn_r', subset=['Own']).format(precision=2), use_container_width = True)
|
1369 |
|
1370 |
st.download_button(
|
|
|
1381 |
st.dataframe(player_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1382 |
st.download_button(
|
1383 |
label="Export Exposures",
|
1384 |
+
data=convert_df_to_csv(st.session_state.player_freq),
|
1385 |
file_name='player_freq_export.csv',
|
1386 |
mime='text/csv',
|
1387 |
)
|
|
|
1389 |
st.dataframe(qb_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1390 |
st.download_button(
|
1391 |
label="Export Exposures",
|
1392 |
+
data=convert_df_to_csv(st.session_state.qb_freq),
|
1393 |
file_name='qb_freq_export.csv',
|
1394 |
mime='text/csv',
|
1395 |
)
|
|
|
1397 |
st.dataframe(rb_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1398 |
st.download_button(
|
1399 |
label="Export Exposures",
|
1400 |
+
data=convert_df_to_csv(st.session_state.rb_freq),
|
1401 |
file_name='rb_freq_export.csv',
|
1402 |
mime='text/csv',
|
1403 |
)
|
|
|
1405 |
st.dataframe(wr_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1406 |
st.download_button(
|
1407 |
label="Export Exposures",
|
1408 |
+
data=convert_df_to_csv(st.session_state.wr_freq),
|
1409 |
file_name='wr_freq_export.csv',
|
1410 |
mime='text/csv',
|
1411 |
)
|
|
|
1413 |
st.dataframe(te_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1414 |
st.download_button(
|
1415 |
label="Export Exposures",
|
1416 |
+
data=convert_df_to_csv(st.session_state.te_freq),
|
1417 |
file_name='te_freq_export.csv',
|
1418 |
mime='text/csv',
|
1419 |
)
|
|
|
1421 |
st.dataframe(flex_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1422 |
st.download_button(
|
1423 |
label="Export Exposures",
|
1424 |
+
data=convert_df_to_csv(st.session_state.flex_freq),
|
1425 |
file_name='flex_freq_export.csv',
|
1426 |
mime='text/csv',
|
1427 |
)
|
|
|
1429 |
st.dataframe(dst_freq.style.background_gradient(axis=0).background_gradient(cmap='RdYlGn').format(freq_format, precision=2), use_container_width = True)
|
1430 |
st.download_button(
|
1431 |
label="Export Exposures",
|
1432 |
+
data=convert_df_to_csv(st.session_state.dst_freq),
|
1433 |
file_name='dst_freq_export.csv',
|
1434 |
mime='text/csv',
|
1435 |
)
|