James McCool commited on
Commit
d2deb1d
·
1 Parent(s): 920b00d

Refactor SE Score calculation in predict_dupes function to incorporate player diversity, enhancing the accuracy of the score. Removed redundant print statement for cleaner output.

Browse files
Files changed (1) hide show
  1. global_func/predict_dupes.py +4 -4
global_func/predict_dupes.py CHANGED
@@ -442,13 +442,13 @@ 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
- 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
- print(portfolio['SE Score'].head(10))
449
 
450
  # Calculate similarity score based on actual player selection
451
  portfolio['Diversity'] = calculate_player_similarity_score_chunked(portfolio, player_columns)
 
 
 
452
  # check_portfolio = portfolio.copy()
453
  portfolio = portfolio.drop(columns=dup_count_columns)
454
  portfolio = portfolio.drop(columns=own_columns)
 
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
 
447
  # Calculate similarity score based on actual player selection
448
  portfolio['Diversity'] = calculate_player_similarity_score_chunked(portfolio, player_columns)
449
+
450
+ portfolio['SE Score'] = ((portfolio['median'] - portfolio['median'].mean()) * (portfolio['Weighted Own'] - portfolio['Weighted Own'].mean())) * (1 - portfolio['Diversity'])
451
+ portfolio['SE Score'] = (np.tanh(portfolio['SE Score'] / portfolio['SE Score'].std()) + 1) / 2
452
  # check_portfolio = portfolio.copy()
453
  portfolio = portfolio.drop(columns=dup_count_columns)
454
  portfolio = portfolio.drop(columns=own_columns)