Skip to content

Commit ed05eb9

Browse files
Jingjing TangJingjing Tang
authored andcommitted
rewrite code for smoothing(groupby geo_id)
1 parent 7bfeeac commit ed05eb9

File tree

2 files changed

+8
-6
lines changed

2 files changed

+8
-6
lines changed

google_symptoms/delphi_google_symptoms/pull.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# -*- coding: utf-8 -*-
22
import re
3-
from datetime import timedelta
43

54
import numpy as np
65
import pandas as pd
@@ -94,7 +93,7 @@ def pull_gs_data(base_url, metrics, level):
9493

9594
# Make sure each FIPS/state has same number of rows
9695
geo_list = df["geo_id"].unique()
97-
date_list = pd.date_range(start=df["date"].min()-timedelta(days=7),
96+
date_list = pd.date_range(start=df["date"].min(),
9897
end=df["date"].max(),
9998
freq='D')
10099
index_df = pd.MultiIndex.from_product(

google_symptoms/delphi_google_symptoms/run.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,17 @@ def run_module():
2525
df_pull = pull_gs_data(base_url, METRICS, geo_res)
2626
for metric, smoother in product(METRICS, SMOOTHERS):
2727
print(geo_res, metric, smoother)
28-
df = df_pull.copy()
29-
if smoother == "smoothed":
30-
df = df.fillna(0)
31-
df["val"] = SMOOTHERS_MAP[smoother][0](df["symptom:"+metric].values)
28+
# df = df_pull.copy()
29+
# if smoother == "smoothed":
30+
# df = df.fillna(0)
31+
df = df_pull.set_index(["timestamp", "geo_id"])
32+
df["val"] = df["symptom:"+metric].groupby(level=1
33+
).transform(SMOOTHERS_MAP[smoother][0])
3234
df["se"] = np.nan
3335
df["sample_size"] = np.nan
3436
# Drop early entries where data insufficient for smoothing
3537
df = df.loc[~df["val"].isnull(), :]
38+
df = df.reset_index()
3639
sensor_name = "_".join(["wip", smoother, "search"])
3740
create_export_csv(
3841
df,

0 commit comments

Comments
 (0)