James McCool commited on
Commit
25d2acd
·
1 Parent(s): 73768e2

Enhanced ownership projection calculations by applying a conditional scaling factor for values exceeding the 90th percentile.

Browse files
Files changed (1) hide show
  1. src/sports/nascar_functions.py +2 -0
src/sports/nascar_functions.py CHANGED
@@ -3,6 +3,7 @@ from numpy import random as np_random
3
  from numpy import array as np_array
4
  from numpy import zeros as np_zeros
5
  from numpy import nan as np_nan
 
6
 
7
  # Pandas
8
  from pandas import DataFrame
@@ -338,6 +339,7 @@ def player_level_classic_roo(working_proj: DataFrame, stat_dicts: dict, working_
338
  final_Proj['Own'] = final_Proj['Own'].astype('float')
339
  power_scale = 1.33
340
  final_Proj['Own'] = final_Proj['Own'] ** power_scale
 
341
  own_norm = 600 / final_Proj['Own'].sum()
342
  final_Proj['Own'] = final_Proj['Own'] * own_norm
343
  final_Proj['Small_Own'] = final_Proj['Own'] + (.2 * (final_Proj['Own'] - final_Proj['Own'].mean()))
 
3
  from numpy import array as np_array
4
  from numpy import zeros as np_zeros
5
  from numpy import nan as np_nan
6
+ from numpy import where as np_where
7
 
8
  # Pandas
9
  from pandas import DataFrame
 
339
  final_Proj['Own'] = final_Proj['Own'].astype('float')
340
  power_scale = 1.33
341
  final_Proj['Own'] = final_Proj['Own'] ** power_scale
342
+ final_Proj['Own'] = np_where(final_Proj['Own'] > final_Proj['Own'].quantile(0.90), final_Proj['Own'] * 1.5, final_Proj['Own'])
343
  own_norm = 600 / final_Proj['Own'].sum()
344
  final_Proj['Own'] = final_Proj['Own'] * own_norm
345
  final_Proj['Small_Own'] = final_Proj['Own'] + (.2 * (final_Proj['Own'] - final_Proj['Own'].mean()))