def resample_missing_values(df, date, period):
df.set_index('date', inplace=True)
# For duplicate values for same coordinates, the maximum value is chosen rather than average.
df = (df.groupby(['lat', 'lon', 'countries'])).resample('D').max()
df.reset_index(['lat', 'lon', 'countries'], drop=True, inplace=True)
df['count'].fillna(0, inplace=True)
df.groupby(['lat', 'lon', 'countries']).fillna(method='ffill', inplace=True)
df.groupby(['lat', 'lon', 'countries']).fillna(method='bfill', inplace=True)
df.reset_index(inplace=True)
idx = pd.DatetimeIndex(start=date - dt.timedelta(days=(period - 1)), end=date, freq='D')
new_df = pd.DataFrame()
for index, group in df.groupby(['lat', 'lon', 'countries']):
group = expand_date_range(group, idx)
new_df = pd.concat([new_df, group])
new_df.rename(columns={'index': 'date'}, inplace=True)
return new_df
Top_Trending.py 文件源码
python
阅读 31
收藏 0
点赞 0
评论 0
评论列表
文章目录