Jon Solow
commited on
Commit
·
5681b11
1
Parent(s):
4d036d6
Try loading map into global var at runtime since not expected to change avoiding possible cache issue
Browse files- src/stats.py +11 -8
src/stats.py
CHANGED
@@ -229,15 +229,18 @@ YAHOO_TO_STAT_MAP: dict[str, dict[str, str]] = {
|
|
229 |
}
|
230 |
|
231 |
|
232 |
-
# cache id map for 24 hours
|
233 |
-
@st.cache_data(ttl=60 * 60 * 24)
|
234 |
def get_yahoo_id_map() -> dict[str, str]:
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
|
|
|
|
|
|
|
|
240 |
|
|
|
241 |
|
242 |
# happens to be the same
|
243 |
YAHOO_WEEK_MAP = NFLVERSE_STAT_WEEK_TO_PLAYOFF_WEEK
|
@@ -270,7 +273,7 @@ def add_yahoo_stat_type_to_stat_map(
|
|
270 |
player_id = short_team_names_to_player_id[player["player"]["team"]["abbreviation"]]
|
271 |
else:
|
272 |
raw_player_id = player["player"]["playerId"].split(".")[-1]
|
273 |
-
player_id =
|
274 |
|
275 |
if not player_id:
|
276 |
continue
|
|
|
229 |
}
|
230 |
|
231 |
|
|
|
|
|
232 |
def get_yahoo_id_map() -> dict[str, str]:
|
233 |
+
try:
|
234 |
+
teams_included = [x.id_map_short_name for x, _ in PLAYOFF_TEAM_DEF_PLAYER]
|
235 |
+
df = pd.read_csv(r"https://raw.githubusercontent.com/dynastyprocess/data/master/files/db_playerids.csv")
|
236 |
+
df = df[(df["yahoo_id"].notna() & df["gsis_id"].notna() & df["team"].isin(teams_included))]
|
237 |
+
df["yahoo_id"] = df["yahoo_id"].astype(int).astype(str)
|
238 |
+
return df.set_index("yahoo_id")["gsis_id"].to_dict()
|
239 |
+
except Exception:
|
240 |
+
return {}
|
241 |
+
|
242 |
|
243 |
+
YAHOO_PLAYER_ID_MAP = get_yahoo_id_map()
|
244 |
|
245 |
# happens to be the same
|
246 |
YAHOO_WEEK_MAP = NFLVERSE_STAT_WEEK_TO_PLAYOFF_WEEK
|
|
|
273 |
player_id = short_team_names_to_player_id[player["player"]["team"]["abbreviation"]]
|
274 |
else:
|
275 |
raw_player_id = player["player"]["playerId"].split(".")[-1]
|
276 |
+
player_id = YAHOO_PLAYER_ID_MAP.get(raw_player_id)
|
277 |
|
278 |
if not player_id:
|
279 |
continue
|