James McCool
commited on
Commit
·
a1c389d
1
Parent(s):
8d70403
Adding SE score
Browse files
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')
|