原文链接:http://tecdat.cn/?p=27363
原文出处:拓端数据部落公众号
本文在相对简单的数据集上探索不同的时间序列技术。
给定 5 年的商店商品销售数据,并要求您预测 10 家不同商店的 50 种不同商品在 3 个月内的销售额。
处理季节性的最佳方法是什么?商店应该单独建模,还是可以将它们合并在一起?
商店项目需求预测
自回归综合移动平均线 (ARIMA)
这 ARIMA 模型是可应用于非平稳时间序列的 ARMA 模型的推广。
-
import time
-
import pandas as pd
-
-
%matplotlib inline
加载数据
-
d_trn = pd.rad_csv('../inuraicsv, prse_tes=date'], inx_col['te'])
-
d_ts = pd.ra_csv'../iputst.csv', prse_des=['date'], ine_col['d
所有商店似乎都显示出相同的趋势和季节性。
ARIMAX
带解释变量的自回归综合移动平均线 (ARIMAX) 是 ARIMA 的扩展版本,其中包括独立的预测变量。
准备数据
-
mnths = df_rinindx.nth
-
-
df_ran.drpna(iplac=True)
-
d_trin.head()
-
import datetime
-
-
dumymns = pd.get_dummies(moth)
-
-
prev_uate_dates = d_tet_x.index - datie.timedelta(das=91)
-
dfetex.head()
构建模型
-
si1 = d_rin.loc[(d_tin['store'] == 1) & (_tran['ie'] == 1), 'ses']
-
exog_s1i1 = df_train.loc[(df_train['store'] == 1) & (df_train['item'] ==
-
-
-
ax = SARIMAX(si1.loc['2013-12-31':], exog=exog
-
nfoceinvetiblity=alse,enforce_ationarity=False,
作出预测
-
-
nog = df_rai.loc[(ftrin['str'] == s) & (df_rin['te'] == i), 'als']
-
-
SARIMAX(endog=edog exog=xo,
-
enorce_invtiilit=False, eorce_statnarityFalse, freq='D',
-
order=(7,0,0)).fit()
-
-
tc = time.time()
示例预测
-
xg = f_rin.loc[(df_rin[ste'] == 10) & (d_tri['itm'] == 50)].drop(['', 'ite', 'sas'], axis=1)
-
forast = arax.predict
最受欢迎的见解
1.在python中使用lstm和pytorch进行时间序列预测
2.python中利用长短期记忆模型lstm进行时间序列预测分析
3.Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列
4.Python TensorFlow循环神经网络RNN-LSTM神经网络预测股票市场价格时间序列和MSE评估准确性
6.R 语言用RNN循环神经网络 、LSTM长短期记忆网络实现时间序列长期利率预测
7.Matlab创建向量自回归(VAR)模型分析消费者价格指数 (CPI) 和失业率时间序列