作者 by aigle / 2022-01-11 / 暂无评论
#计算周均销售额平均值
ma_dw = train[['family','store_nbr','dow','sales']].groupby(['family','store_nbr','dow'])['sales'].mean().to_frame('madw')
ma_dw.reset_index(inplace=True)
#train = train[train['date'].dt.year == 2017]
gc.collect()
ma_wk = ma_dw[['family','store_nbr','madw']].groupby(['store_nbr', 'family'])['madw'].mean().to_frame('mawk')
ma_wk.reset_index(inplace=True)train.loc[(train.sales<0),'sales'] = 0 # 若模拟销售额中有负数将改销售额置零#使用移动平均法建立预测销售额
for i in [112,56,28,14,7,3,1]:
tmp = train[train.date>lastdate-timedelta(int(i))]
tmpg = tmp.groupby(['family','store_nbr'])['sales'].mean().to_frame('mais'+str(i))
ma_is = ma_is.join(tmpg, how='left')
评论已关闭