James McCool commited on
Commit
2bd68c9
·
1 Parent(s): d107b59

Align Assist Projection Scaling with Kill Projection Method

Browse files

Modify the assist projection calculation to:
- Use kill scaling factor for assist projections in both win and loss scenarios
- Remove separate assist scaling logic
- Maintain consistent scaling approach across kill and assist projections

Files changed (1) hide show
  1. app.py +2 -8
app.py CHANGED
@@ -335,18 +335,12 @@ def init_team_data(game_count, team, opponent, win_loss_settings, kill_predictio
335
  raw_kills = team_data.apply(lambda row: row['wKill%'] * opp_pos_kills_boost_win.get(row['position'], 1), axis=1)
336
  raw_deaths = team_data.apply(lambda row: row['wDeath%'] * opp_pos_deaths_boost_win.get(row['position'], 1), axis=1)
337
  raw_assists = team_data.apply(lambda row: row['wAssist%'] * opp_pos_assists_boost_win.get(row['position'], 1), axis=1)
338
- print(raw_kills.sum())
339
- print(raw_deaths.sum())
340
- print(raw_assists.sum())
341
  kill_scale = kill_predictions[game] / raw_kills.sum()
342
  death_scale = min(1.0, death_predictions[game] / raw_deaths.sum()) if raw_deaths.sum() > 0 else 1.0
343
  assist_scale = min(1.0, kill_predictions[game] / raw_assists.sum()) if raw_assists.sum() > 0 else 1.0
344
- print(kill_scale)
345
- print(death_scale)
346
- print(assist_scale)
347
  team_data['Kill_Proj'] = raw_kills * kill_scale
348
  team_data['Death_Proj'] = raw_deaths * death_scale
349
- team_data['Assist_Proj'] = raw_assists * assist_scale
350
 
351
  team_data['CS_Proj'] = team_data.apply(lambda row: row['wCS'] * opp_pos_cs_boost_win.get(row['position'], 1), axis=1)
352
  team_data = team_data[['playername', 'teamname', 'position', 'Kill_Proj', 'Death_Proj', 'Assist_Proj', 'CS_Proj']]
@@ -359,7 +353,7 @@ def init_team_data(game_count, team, opponent, win_loss_settings, kill_predictio
359
  assist_scale = min(1.0, kill_predictions[game] / raw_assists.sum()) if raw_assists.sum() > 0 else 1.0
360
  team_data['Kill_Proj'] = raw_kills * kill_scale
361
  team_data['Death_Proj'] = raw_deaths * death_scale
362
- team_data['Assist_Proj'] = raw_assists * assist_scale
363
 
364
  team_data['CS_Proj'] = team_data.apply(lambda row: row['lCS'] * opp_pos_cs_boost_loss.get(row['position'], 1), axis=1)
365
  team_data = team_data[['playername', 'teamname', 'position', 'Kill_Proj', 'Death_Proj', 'Assist_Proj', 'CS_Proj']]
 
335
  raw_kills = team_data.apply(lambda row: row['wKill%'] * opp_pos_kills_boost_win.get(row['position'], 1), axis=1)
336
  raw_deaths = team_data.apply(lambda row: row['wDeath%'] * opp_pos_deaths_boost_win.get(row['position'], 1), axis=1)
337
  raw_assists = team_data.apply(lambda row: row['wAssist%'] * opp_pos_assists_boost_win.get(row['position'], 1), axis=1)
 
 
 
338
  kill_scale = kill_predictions[game] / raw_kills.sum()
339
  death_scale = min(1.0, death_predictions[game] / raw_deaths.sum()) if raw_deaths.sum() > 0 else 1.0
340
  assist_scale = min(1.0, kill_predictions[game] / raw_assists.sum()) if raw_assists.sum() > 0 else 1.0
 
 
 
341
  team_data['Kill_Proj'] = raw_kills * kill_scale
342
  team_data['Death_Proj'] = raw_deaths * death_scale
343
+ team_data['Assist_Proj'] = raw_assists * kill_scale
344
 
345
  team_data['CS_Proj'] = team_data.apply(lambda row: row['wCS'] * opp_pos_cs_boost_win.get(row['position'], 1), axis=1)
346
  team_data = team_data[['playername', 'teamname', 'position', 'Kill_Proj', 'Death_Proj', 'Assist_Proj', 'CS_Proj']]
 
353
  assist_scale = min(1.0, kill_predictions[game] / raw_assists.sum()) if raw_assists.sum() > 0 else 1.0
354
  team_data['Kill_Proj'] = raw_kills * kill_scale
355
  team_data['Death_Proj'] = raw_deaths * death_scale
356
+ team_data['Assist_Proj'] = raw_assists * kill_scale
357
 
358
  team_data['CS_Proj'] = team_data.apply(lambda row: row['lCS'] * opp_pos_cs_boost_loss.get(row['position'], 1), axis=1)
359
  team_data = team_data[['playername', 'teamname', 'position', 'Kill_Proj', 'Death_Proj', 'Assist_Proj', 'CS_Proj']]