James McCool commited on
Commit
9c0b8c6
·
1 Parent(s): 8e462c9

Refactor exposure_spread function to include a new parameter for type_var, enabling sport-specific logic for player eligibility checks and enhancing the accuracy of player replacements based on game type.

Browse files
Files changed (1) hide show
  1. global_func/exposure_spread.py +6 -2
global_func/exposure_spread.py CHANGED
@@ -187,7 +187,7 @@ def check_position_eligibility(sport, column_name, player_positions):
187
  # Default fallback - assume exact position match
188
  return column_name in player_positions
189
 
190
- def exposure_spread(working_frame, exposure_player, exposure_target, exposure_stack_bool, projections_df, sport_var):
191
  # Find comparable players in the projections
192
  comparable_players = projections_df[projections_df['player_names'] == exposure_player]
193
 
@@ -253,7 +253,11 @@ def exposure_spread(working_frame, exposure_player, exposure_target, exposure_st
253
  replacement_player_positions = projections_df[projections_df['player_names'] == insert_player]['position'].iloc[0].split('/')
254
 
255
  # Check if the replacement player is eligible for this column
256
- if check_position_eligibility(sport_var, col, replacement_player_positions):
 
 
 
 
257
  working_frame.at[row, col] = insert_player
258
  break
259
  change_counter += 1
 
187
  # Default fallback - assume exact position match
188
  return column_name in player_positions
189
 
190
+ def exposure_spread(working_frame, exposure_player, exposure_target, exposure_stack_bool, projections_df, sport_var, type_var):
191
  # Find comparable players in the projections
192
  comparable_players = projections_df[projections_df['player_names'] == exposure_player]
193
 
 
253
  replacement_player_positions = projections_df[projections_df['player_names'] == insert_player]['position'].iloc[0].split('/')
254
 
255
  # Check if the replacement player is eligible for this column
256
+ if type_var == 'Classic':
257
+ if check_position_eligibility(sport_var, col, replacement_player_positions):
258
+ working_frame.at[row, col] = insert_player
259
+ break
260
+ else:
261
  working_frame.at[row, col] = insert_player
262
  break
263
  change_counter += 1