使用 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
当前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