James McCool commited on
Commit
a1c389d
·
1 Parent(s): 8d70403

Adding SE score

Browse files
Files changed (1) hide show
  1. global_func/predict_dupes.py +3 -1
global_func/predict_dupes.py CHANGED
@@ -442,6 +442,8 @@ def predict_dupes(portfolio, maps_dict, site_var, type_var, Contest_Size, streng
442
  portfolio['Lineup Edge'] = 2 * max_edge * (portfolio['Lineup Edge'] - portfolio['Lineup Edge'].min()) / (portfolio['Lineup Edge'].max() - portfolio['Lineup Edge'].min()) - max_edge
443
  portfolio['Weighted Own'] = portfolio[own_columns].apply(calculate_weighted_ownership_wrapper, axis=1)
444
  portfolio['Geomean'] = np.power((portfolio[own_columns] * 100).product(axis=1), 1 / len(own_columns))
 
 
445
 
446
  # Calculate similarity score based on actual player selection
447
  portfolio['Diversity'] = calculate_player_similarity_score_chunked(portfolio, player_columns)
@@ -452,7 +454,7 @@ def predict_dupes(portfolio, maps_dict, site_var, type_var, Contest_Size, streng
452
 
453
  int16_columns_stacks = ['Dupes', 'Size', 'salary']
454
  int16_columns_nstacks = ['Dupes', 'salary']
455
- float32_columns = ['median', 'Own', 'Finish_percentile', 'Win%', 'Lineup Edge', 'Weighted Own', 'Geomean', 'Diversity']
456
 
457
  try:
458
  portfolio[int16_columns_stacks] = portfolio[int16_columns_stacks].astype('uint16')
 
442
  portfolio['Lineup Edge'] = 2 * max_edge * (portfolio['Lineup Edge'] - portfolio['Lineup Edge'].min()) / (portfolio['Lineup Edge'].max() - portfolio['Lineup Edge'].min()) - max_edge
443
  portfolio['Weighted Own'] = portfolio[own_columns].apply(calculate_weighted_ownership_wrapper, axis=1)
444
  portfolio['Geomean'] = np.power((portfolio[own_columns] * 100).product(axis=1), 1 / len(own_columns))
445
+ portfolio['SE Score'] = ((portfolio['median'] - portfolio['median'].mean()) * (portfolio['Weighted Own'] - portfolio['Weighted Own'].mean()))
446
+ portfolio['SE Score'] = (np.tanh(portfolio['SE Score'] / portfolio['SE Score'].std()) + 1) / 2
447
 
448
  # Calculate similarity score based on actual player selection
449
  portfolio['Diversity'] = calculate_player_similarity_score_chunked(portfolio, player_columns)
 
454
 
455
  int16_columns_stacks = ['Dupes', 'Size', 'salary']
456
  int16_columns_nstacks = ['Dupes', 'salary']
457
+ float32_columns = ['median', 'Own', 'Finish_percentile', 'Win%', 'SE Score', 'Lineup Edge', 'Weighted Own', 'Geomean', 'Diversity']
458
 
459
  try:
460
  portfolio[int16_columns_stacks] = portfolio[int16_columns_stacks].astype('uint16')