Multichem commited on
Commit
7518169
·
1 Parent(s): 44220c3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +12 -6
app.py CHANGED
@@ -67,10 +67,13 @@ def init_baslines():
67
  raw_display.rename(columns={"name": "Player"}, inplace = True)
68
  fd_ids = dict(zip(raw_display['Player'], raw_display['player_id']))
69
 
70
- return dk_roo_raw, fd_roo_raw, dk_ids, fd_ids
 
71
 
72
- dk_roo_raw, fd_roo_raw, dkid_dict, fdid_dict = init_baslines()
73
- t_stamp = f"Last Update: " + "idk man recently probably" + f" CST"
 
 
74
 
75
  static_exposure = pd.DataFrame(columns=['Player', 'count'])
76
  overall_exposure = pd.DataFrame(columns=['Player', 'count'])
@@ -430,6 +433,7 @@ def get_uncorrelated_portfolio_for_sim(Total_Sample_Size, sharp_split, field_gro
430
  tab1, tab2 = st.tabs(['Uploads', 'Contest Sim'])
431
 
432
  with tab1:
 
433
  with st.container():
434
  col1, col2 = st.columns([3, 3])
435
 
@@ -616,8 +620,8 @@ with tab2:
616
  st.cache_data.clear()
617
  for key in st.session_state.keys():
618
  del st.session_state[key]
619
- dk_roo_raw, fd_roo_raw, dkid_dict, fdid_dict = init_baslines()
620
- t_stamp = f"Last Update: " + "idk man recently probably" + f" CST"
621
 
622
  slate_var1 = st.radio("Which data are you loading?", ('Main Slate', 'User'))
623
  site_var1 = st.radio("What site are you working with?", ('Draftkings', 'Fanduel'))
@@ -701,7 +705,7 @@ with tab2:
701
  # # Apply the calculation to the DataFrame
702
  # initial_proj['Own%'] = initial_proj.apply(lambda row: calculate_own(row['Position'], row['Own'], initial_proj.loc[initial_proj['Position'] == row['Position'], 'Own'].mean(), factor_c if row['Position'] == 'C' else factor_other), axis=1)
703
  # initial_proj['Own%'] = initial_proj['Own%'].clip(upper=85)
704
- initial_proj['Own'] = initial_proj['Own%'] * (900 / initial_proj['Own%'].sum())
705
 
706
  # Drop unnecessary columns and create the final DataFrame
707
  Overall_Proj = initial_proj[['Player', 'Team', 'Position', 'Median', 'Own', 'Salary']]
@@ -737,6 +741,8 @@ with tab2:
737
  UserPortfolio = pd.DataFrame(columns = ['PG', 'SG', 'SF', 'PF', 'C', 'G', 'F', 'UTIL'])
738
 
739
  Overall_Proj.replace('', np.nan, inplace=True)
 
 
740
  Overall_Proj = Overall_Proj.dropna(subset=['Median'])
741
  Overall_Proj = Overall_Proj.assign(Value=lambda x: (x.Median / (x.Salary / 1000)))
742
  Overall_Proj['Sort_var'] = (Overall_Proj['Median'].rank(ascending=False) + Overall_Proj['Value'].rank(ascending=False)) / 2
 
67
  raw_display.rename(columns={"name": "Player"}, inplace = True)
68
  fd_ids = dict(zip(raw_display['Player'], raw_display['player_id']))
69
 
70
+ worksheet = sh.worksheet('Timestamp')
71
+ timestamp = worksheet.acell('A1').value
72
 
73
+ return dk_roo_raw, fd_roo_raw, dk_ids, fd_ids, timestamp
74
+
75
+ dk_roo_raw, fd_roo_raw, dkid_dict, fdid_dict, timestamp = init_baslines()
76
+ t_stamp = f"Last Update: " + str(timestamp) + f" CST"
77
 
78
  static_exposure = pd.DataFrame(columns=['Player', 'count'])
79
  overall_exposure = pd.DataFrame(columns=['Player', 'count'])
 
433
  tab1, tab2 = st.tabs(['Uploads', 'Contest Sim'])
434
 
435
  with tab1:
436
+ st.info("The contest sim currently only works for Draftkings, the roster formation for Fanduel is incorrect. It'll be fixed in the next couple of days!")
437
  with st.container():
438
  col1, col2 = st.columns([3, 3])
439
 
 
620
  st.cache_data.clear()
621
  for key in st.session_state.keys():
622
  del st.session_state[key]
623
+ dk_roo_raw, fd_roo_raw, dkid_dict, fdid_dict, timestamp = init_baslines()
624
+ t_stamp = f"Last Update: " + str(timestamp) + f" CST"
625
 
626
  slate_var1 = st.radio("Which data are you loading?", ('Main Slate', 'User'))
627
  site_var1 = st.radio("What site are you working with?", ('Draftkings', 'Fanduel'))
 
705
  # # Apply the calculation to the DataFrame
706
  # initial_proj['Own%'] = initial_proj.apply(lambda row: calculate_own(row['Position'], row['Own'], initial_proj.loc[initial_proj['Position'] == row['Position'], 'Own'].mean(), factor_c if row['Position'] == 'C' else factor_other), axis=1)
707
  # initial_proj['Own%'] = initial_proj['Own%'].clip(upper=85)
708
+ initial_proj['Own'] = initial_proj['Own'] * (900 / initial_proj['Own'].sum())
709
 
710
  # Drop unnecessary columns and create the final DataFrame
711
  Overall_Proj = initial_proj[['Player', 'Team', 'Position', 'Median', 'Own', 'Salary']]
 
741
  UserPortfolio = pd.DataFrame(columns = ['PG', 'SG', 'SF', 'PF', 'C', 'G', 'F', 'UTIL'])
742
 
743
  Overall_Proj.replace('', np.nan, inplace=True)
744
+ Overall_Proj = Overall_Proj.replace(',','', regex=True)
745
+ Overall_Proj['Salary'] = Overall_Proj['Salary'].astype(int)
746
  Overall_Proj = Overall_Proj.dropna(subset=['Median'])
747
  Overall_Proj = Overall_Proj.assign(Value=lambda x: (x.Median / (x.Salary / 1000)))
748
  Overall_Proj['Sort_var'] = (Overall_Proj['Median'].rank(ascending=False) + Overall_Proj['Value'].rank(ascending=False)) / 2