Spaces:
Running
Running
James McCool
commited on
Commit
·
87b7422
1
Parent(s):
07a4d86
Add Handbuilder tab in app.py to allow user selection of players for lineup creation, enhancing user interactivity and lineup management capabilities.
Browse files
app.py
CHANGED
@@ -292,7 +292,7 @@ with col2:
|
|
292 |
site_var = st.selectbox("What site do you want to view?", ('Draftkings', 'Fanduel'), key='site_var')
|
293 |
|
294 |
|
295 |
-
tab1, tab2, tab3 = st.tabs(["Scoring Percentages", "Player ROO", "Optimals"])
|
296 |
|
297 |
roo_data, sd_roo_data, scoring_percentages, dk_roo, fd_roo, dk_id_map, fd_id_map = init_baselines()
|
298 |
hold_display = roo_data
|
@@ -797,4 +797,45 @@ with tab3:
|
|
797 |
data=convert_df_to_csv(summary_df),
|
798 |
file_name='MLB_seed_frame_frequency.csv',
|
799 |
mime='text/csv',
|
800 |
-
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
292 |
site_var = st.selectbox("What site do you want to view?", ('Draftkings', 'Fanduel'), key='site_var')
|
293 |
|
294 |
|
295 |
+
tab1, tab2, tab3, tab4 = st.tabs(["Scoring Percentages", "Player ROO", "Optimals", "Handbuilder"])
|
296 |
|
297 |
roo_data, sd_roo_data, scoring_percentages, dk_roo, fd_roo, dk_id_map, fd_id_map = init_baselines()
|
298 |
hold_display = roo_data
|
|
|
797 |
data=convert_df_to_csv(summary_df),
|
798 |
file_name='MLB_seed_frame_frequency.csv',
|
799 |
mime='text/csv',
|
800 |
+
)
|
801 |
+
|
802 |
+
with tab4:
|
803 |
+
st.header("Handbuilder")
|
804 |
+
|
805 |
+
# Prepare the player selection DataFrame
|
806 |
+
player_select_df = dk_roo[['Player', 'Position', 'Team', 'Salary', 'Median', 'Ceiling', 'Own%']].copy()
|
807 |
+
player_select_df['Select'] = False # Add a checkbox column
|
808 |
+
|
809 |
+
# Use session state to persist selections
|
810 |
+
if 'handbuilder_select' not in st.session_state:
|
811 |
+
st.session_state.handbuilder_select = player_select_df
|
812 |
+
|
813 |
+
# Data editor for player selection
|
814 |
+
st.subheader("Player Select")
|
815 |
+
edited_df = st.data_editor(
|
816 |
+
st.session_state.handbuilder_select,
|
817 |
+
column_config={
|
818 |
+
"Select": st.column_config.CheckboxColumn(
|
819 |
+
"Select",
|
820 |
+
help="Check to add player to lineup",
|
821 |
+
default=False
|
822 |
+
)
|
823 |
+
},
|
824 |
+
use_container_width=True,
|
825 |
+
hide_index=True,
|
826 |
+
key="handbuilder_editor"
|
827 |
+
)
|
828 |
+
|
829 |
+
# Update session state with the edited DataFrame
|
830 |
+
st.session_state.handbuilder_select = edited_df
|
831 |
+
|
832 |
+
# Filter selected players for the lineup
|
833 |
+
selected_players = edited_df[edited_df['Select'] == True]
|
834 |
+
|
835 |
+
# Display the selected lineup
|
836 |
+
st.subheader("Lineup")
|
837 |
+
st.dataframe(
|
838 |
+
selected_players.drop(columns=['Select']),
|
839 |
+
use_container_width=True,
|
840 |
+
height=500
|
841 |
+
)
|