Merge branch 'main' of hf.co:spaces/jsolow/nfl-playoff-challenge-streamlit into parse-stats-txt
Browse files- src/domain/playoffs.py +8 -3
- src/stats.py +8 -3
src/domain/playoffs.py
CHANGED
@@ -24,7 +24,7 @@ ROSTER_WEEK_TO_PLAYOFF_WEEK = {v: k for k, v in PLAYOFF_WEEK_TO_ROSTER_WEEK.item
|
|
24 |
ROSTER_WEEK_TO_PLAYOFF_WEEK[17] = 1
|
25 |
|
26 |
# TODO - remove this temp hack to get options loaded earlier in week
|
27 |
-
ROSTER_WEEK_TO_PLAYOFF_WEEK[18] =
|
28 |
|
29 |
|
30 |
PLAYOFF_WEEK_TO_NAME = {
|
@@ -35,7 +35,7 @@ PLAYOFF_WEEK_TO_NAME = {
|
|
35 |
5: "Total",
|
36 |
}
|
37 |
|
38 |
-
CURRENT_PLAYOFF_WEEK =
|
39 |
|
40 |
|
41 |
PLAYOFFS_TEAMS = {
|
@@ -83,7 +83,12 @@ PLAYOFFS_TEAMS = {
|
|
83 |
teams.detroit_lions.rosters_short_name,
|
84 |
teams.los_angeles_rams.rosters_short_name,
|
85 |
],
|
86 |
-
3: [
|
|
|
|
|
|
|
|
|
|
|
87 |
4: [],
|
88 |
}
|
89 |
|
|
|
24 |
ROSTER_WEEK_TO_PLAYOFF_WEEK[17] = 1
|
25 |
|
26 |
# TODO - remove this temp hack to get options loaded earlier in week
|
27 |
+
ROSTER_WEEK_TO_PLAYOFF_WEEK[18] = 3
|
28 |
|
29 |
|
30 |
PLAYOFF_WEEK_TO_NAME = {
|
|
|
35 |
5: "Total",
|
36 |
}
|
37 |
|
38 |
+
CURRENT_PLAYOFF_WEEK = 3
|
39 |
|
40 |
|
41 |
PLAYOFFS_TEAMS = {
|
|
|
83 |
teams.detroit_lions.rosters_short_name,
|
84 |
teams.los_angeles_rams.rosters_short_name,
|
85 |
],
|
86 |
+
3: [
|
87 |
+
teams.buffalo_bills.rosters_short_name,
|
88 |
+
teams.kansas_city_chiefs.rosters_short_name,
|
89 |
+
teams.philadelphia_eagles.rosters_short_name,
|
90 |
+
teams.washington_football_team.rosters_short_name,
|
91 |
+
],
|
92 |
4: [],
|
93 |
}
|
94 |
|
src/stats.py
CHANGED
@@ -369,8 +369,12 @@ def get_yahoo_schedule() -> dict[int, dict[str, dict[str, str | int | pd.Timesta
|
|
369 |
for game_id, game in games_json.items():
|
370 |
if not game_id.split(".")[0] == "nfl":
|
371 |
continue
|
372 |
-
|
373 |
-
|
|
|
|
|
|
|
|
|
374 |
|
375 |
if "week_number" not in game:
|
376 |
continue
|
@@ -520,7 +524,6 @@ def get_stats_map() -> dict[int, dict[str, dict[str, float]]]:
|
|
520 |
for player_id, player_stats in week_stats.items():
|
521 |
stat_map[week][player_id] = player_stats
|
522 |
|
523 |
-
add_points_against_team_win_stat(stat_map)
|
524 |
stat_overrides = get_stat_overrides()
|
525 |
# for stat overrides, override at the stat level
|
526 |
for week, week_stats in stat_overrides.items():
|
@@ -530,6 +533,8 @@ def get_stats_map() -> dict[int, dict[str, dict[str, float]]]:
|
|
530 |
stat_map[week][player_id] = {}
|
531 |
stat_map[week][player_id][stat_key] = stat_value
|
532 |
|
|
|
|
|
533 |
return stat_map
|
534 |
|
535 |
|
|
|
369 |
for game_id, game in games_json.items():
|
370 |
if not game_id.split(".")[0] == "nfl":
|
371 |
continue
|
372 |
+
try:
|
373 |
+
# sometimes yahoo has issue where home_team_id is ''
|
374 |
+
away_team = team_id_to_abbr[game["away_team_id"]]
|
375 |
+
home_team = team_id_to_abbr[game["home_team_id"]]
|
376 |
+
except KeyError:
|
377 |
+
continue
|
378 |
|
379 |
if "week_number" not in game:
|
380 |
continue
|
|
|
524 |
for player_id, player_stats in week_stats.items():
|
525 |
stat_map[week][player_id] = player_stats
|
526 |
|
|
|
527 |
stat_overrides = get_stat_overrides()
|
528 |
# for stat overrides, override at the stat level
|
529 |
for week, week_stats in stat_overrides.items():
|
|
|
533 |
stat_map[week][player_id] = {}
|
534 |
stat_map[week][player_id][stat_key] = stat_value
|
535 |
|
536 |
+
add_points_against_team_win_stat(stat_map)
|
537 |
+
|
538 |
return stat_map
|
539 |
|
540 |
|