Jon Solow commited on
Commit
f27cc58
·
1 Parent(s): e014315

Add defensive mapping

Browse files
Files changed (1) hide show
  1. src/stats.py +18 -8
src/stats.py CHANGED
@@ -12,6 +12,7 @@ from domain.playoffs import (
12
  PLAYOFF_TEAM_DEF_PLAYER,
13
  CURRENT_PLAYOFF_WEEK,
14
  )
 
15
  from login import get_stat_overrides
16
  from queries.nflverse.github_data import get_player_kicking_stats, get_player_stats, get_team_defense_stats
17
  from queries.pfr.league_schedule import get_season_game_map
@@ -565,14 +566,14 @@ def get_scores_map() -> dict[int, dict[str, float]]:
565
  LIVE_YAHOO_STAT_COLUMNS = {
566
  "f": [
567
  "f-" + "unknown01",
568
- "f-" + "unknown02",
569
- "f-" + "unknown03",
570
- "f-" + "unknown04",
571
- "f-" + "unknown05",
572
- "f-" + "unknown06",
573
  "f-" + "unknown07",
574
  "f-" + "unknown08",
575
- "f-" + "unknown09",
576
  "f-" + "unknown10",
577
  "f-" + "unknown11",
578
  "f-" + "unknown12",
@@ -695,6 +696,15 @@ LIVE_YAHOO_STAT_COLUMNS = {
695
  }
696
 
697
 
 
 
 
 
 
 
 
 
 
698
  def process_stat_line(stat_line: str) -> dict[str, dict[str, float]]:
699
  remove_unknown = True
700
  values_list = stat_line.split("|")
@@ -703,11 +713,11 @@ def process_stat_line(stat_line: str) -> dict[str, dict[str, float]]:
703
  if not column_list:
704
  return {}
705
  yahoo_player_id = values_list.pop(0)
706
- player_id = YAHOO_PLAYER_ID_MAP.get(yahoo_player_id, "")
707
  if not player_id:
708
  print(f"Player id not found {yahoo_player_id}")
709
  assert len(values_list) == len(column_list)
710
- stat_map = {}
711
  for stat_key, stat_val in zip(column_list, values_list):
712
  if remove_unknown and "unknown" in stat_key:
713
  continue
 
12
  PLAYOFF_TEAM_DEF_PLAYER,
13
  CURRENT_PLAYOFF_WEEK,
14
  )
15
+ from domain import teams
16
  from login import get_stat_overrides
17
  from queries.nflverse.github_data import get_player_kicking_stats, get_player_stats, get_team_defense_stats
18
  from queries.pfr.league_schedule import get_season_game_map
 
566
  LIVE_YAHOO_STAT_COLUMNS = {
567
  "f": [
568
  "f-" + "unknown01",
569
+ SACK.key,
570
+ DEF_INT.key,
571
+ FUM_REC.key,
572
+ DEF_TD.key,
573
+ SAFETY.key,
574
  "f-" + "unknown07",
575
  "f-" + "unknown08",
576
+ RET_TD.key,
577
  "f-" + "unknown10",
578
  "f-" + "unknown11",
579
  "f-" + "unknown12",
 
696
  }
697
 
698
 
699
+ YAHOO_TEAM_ID_MAP = {
700
+ "21": teams.philadelphia_eagles.team_short_name,
701
+ "28": teams.washington_football_team.team_short_name,
702
+ }
703
+
704
+ YAHOO_TEAM_TO_DEF_PLAYER = {k: SHORT_TEAM_NAMES_TO_DEFENSE_PLAYER_ID[v] for k, v in YAHOO_TEAM_ID_MAP.items()}
705
+ YAHOO_PLAYER_ID_MAP_WITH_DEF = {**YAHOO_PLAYER_ID_MAP, **YAHOO_TEAM_TO_DEF_PLAYER}
706
+
707
+
708
  def process_stat_line(stat_line: str) -> dict[str, dict[str, float]]:
709
  remove_unknown = True
710
  values_list = stat_line.split("|")
 
713
  if not column_list:
714
  return {}
715
  yahoo_player_id = values_list.pop(0)
716
+ player_id = YAHOO_PLAYER_ID_MAP_WITH_DEF.get(yahoo_player_id, "")
717
  if not player_id:
718
  print(f"Player id not found {yahoo_player_id}")
719
  assert len(values_list) == len(column_list)
720
+ stat_map: dict[str, float] = {}
721
  for stat_key, stat_val in zip(column_list, values_list):
722
  if remove_unknown and "unknown" in stat_key:
723
  continue