Jon Solow
commited on
Commit
·
f27cc58
1
Parent(s):
e014315
Add defensive mapping
Browse files- 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 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
"f-" + "unknown07",
|
574 |
"f-" + "unknown08",
|
575 |
-
|
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 =
|
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
|