使用 pandas 计算时间序列中一周中每一天的平均值

Calculate the average value for each day of the week in time series using pandas

当前DataFrame如下-

import datetime
#Adding Day,Weekday Field in dataframe
df1['day']=df1['timestamp'].dt.weekday
df1['DOW'] = df1['timestamp'].dt.day_name()
df1.info()
df1.head()

我想为“perf_data.load5”添加 Avg Value,并将当前数据框中的星期作为新列作为 Avg_DOW。

DataFrame

我尝试添加新列,但它显示的是 NAN 值。

df1['avg_dow']=df1[['perf_data.load5','DOW']].groupby(('DOW'),sort=False).mean()
df1

enter image description here

但是在使用不向数据框添加新列的代码时,它工作正常。

请建议如何在现有数据框中添加 Avg_DOW 列。

提前致谢。

df1[['perf_data.load5','DOW']].groupby(('DOW'),sort=False).mean()

enter image description here

这段代码工作正常,可以满足需要。

df.join(df.groupby(['hour', 'weekday'])['value'].mean(), on=['hour','weekday'], rsuffix='_avg')

更多详情,请访问-enter link description here