James McCool
commited on
Commit
·
6d79e77
1
Parent(s):
89cebad
Enhance optimal lineup filtering by replacing mapping logic and reintroducing projection and ownership inputs for user customization.
Browse files- src/streamlit_app.py +5 -4
src/streamlit_app.py
CHANGED
|
@@ -519,8 +519,9 @@ def normalize_special_characters(text):
|
|
| 519 |
|
| 520 |
@st.cache_data
|
| 521 |
def map_mask_parse(df: pd.DataFrame, map: dict, threshold: float):
|
| 522 |
-
|
| 523 |
-
|
|
|
|
| 524 |
df = df[mask]
|
| 525 |
return df
|
| 526 |
|
|
@@ -1095,8 +1096,6 @@ if selected_tab == 'Optimals':
|
|
| 1095 |
with optimals_macro_col:
|
| 1096 |
lineup_num_var = st.number_input("How many lineups do you want to display?", min_value=1, max_value=1000, value=150, step=1, key='lineup_num_var_input')
|
| 1097 |
player_var2 = st.multiselect('Query for lineups including:', options = raw_baselines['Player'].unique(), key='player_var2_multiselect', default=[])
|
| 1098 |
-
projection_var = st.number_input("Minimum projection used", min_value=0.0, max_value=100.0, value=0.0, step=1.0, key='projection_var_input')
|
| 1099 |
-
ownership_var = st.number_input("Minimum ownership used", min_value=0.0, max_value=100.0, value=0.0, step=1.0, key='ownership_var_input')
|
| 1100 |
|
| 1101 |
if type_var == 'Regular':
|
| 1102 |
if site_var == 'Draftkings':
|
|
@@ -1116,6 +1115,7 @@ if selected_tab == 'Optimals':
|
|
| 1116 |
elif site_var == 'Fanduel':
|
| 1117 |
salary_min_var = st.number_input("Minimum salary used", min_value = 0, max_value = 60000, value = 59000, step = 100, key = 'salary_min_var_fd')
|
| 1118 |
salary_max_var = st.number_input("Maximum salary used", min_value = 0, max_value = 60000, value = 60000, step = 100, key = 'salary_max_var_fd')
|
|
|
|
| 1119 |
with optimals_stacks_col:
|
| 1120 |
if site_var == 'Draftkings':
|
| 1121 |
min_stacks_var = st.number_input("Minimum stacks used", min_value = 0, max_value = 5, value = 1, step = 1, key = 'min_stacks_var_dk')
|
|
@@ -1123,6 +1123,7 @@ if selected_tab == 'Optimals':
|
|
| 1123 |
elif site_var == 'Fanduel':
|
| 1124 |
min_stacks_var = st.number_input("Minimum stacks used", min_value = 0, max_value = 4, value = 1, step = 1, key = 'min_stacks_var_fd')
|
| 1125 |
max_stacks_var = st.number_input("Maximum stacks used", min_value = 0, max_value = 4, value = 4, step = 1, key = 'max_stacks_var_fd')
|
|
|
|
| 1126 |
|
| 1127 |
|
| 1128 |
if site_var == 'Draftkings':
|
|
|
|
| 519 |
|
| 520 |
@st.cache_data
|
| 521 |
def map_mask_parse(df: pd.DataFrame, map: dict, threshold: float):
|
| 522 |
+
proj_df = df.iloc[:, :-7].replace(map).astype(float)
|
| 523 |
+
print(proj_df.head(10))
|
| 524 |
+
mask = (proj_df >= threshold).all(axis=1)
|
| 525 |
df = df[mask]
|
| 526 |
return df
|
| 527 |
|
|
|
|
| 1096 |
with optimals_macro_col:
|
| 1097 |
lineup_num_var = st.number_input("How many lineups do you want to display?", min_value=1, max_value=1000, value=150, step=1, key='lineup_num_var_input')
|
| 1098 |
player_var2 = st.multiselect('Query for lineups including:', options = raw_baselines['Player'].unique(), key='player_var2_multiselect', default=[])
|
|
|
|
|
|
|
| 1099 |
|
| 1100 |
if type_var == 'Regular':
|
| 1101 |
if site_var == 'Draftkings':
|
|
|
|
| 1115 |
elif site_var == 'Fanduel':
|
| 1116 |
salary_min_var = st.number_input("Minimum salary used", min_value = 0, max_value = 60000, value = 59000, step = 100, key = 'salary_min_var_fd')
|
| 1117 |
salary_max_var = st.number_input("Maximum salary used", min_value = 0, max_value = 60000, value = 60000, step = 100, key = 'salary_max_var_fd')
|
| 1118 |
+
projection_var = st.number_input("Minimum projection used", min_value=0.0, max_value=100.0, value=0.0, step=1.0, key='projection_var_input')
|
| 1119 |
with optimals_stacks_col:
|
| 1120 |
if site_var == 'Draftkings':
|
| 1121 |
min_stacks_var = st.number_input("Minimum stacks used", min_value = 0, max_value = 5, value = 1, step = 1, key = 'min_stacks_var_dk')
|
|
|
|
| 1123 |
elif site_var == 'Fanduel':
|
| 1124 |
min_stacks_var = st.number_input("Minimum stacks used", min_value = 0, max_value = 4, value = 1, step = 1, key = 'min_stacks_var_fd')
|
| 1125 |
max_stacks_var = st.number_input("Maximum stacks used", min_value = 0, max_value = 4, value = 4, step = 1, key = 'max_stacks_var_fd')
|
| 1126 |
+
ownership_var = st.number_input("Minimum ownership used", min_value=0.0, max_value=100.0, value=0.0, step=1.0, key='ownership_var_input')
|
| 1127 |
|
| 1128 |
|
| 1129 |
if site_var == 'Draftkings':
|