分享

数据分享|PYTHON用ARIMA ,ARIMAX预测商店商品销售需求时间序列数据

 拓端数据 2022-06-23 发布于上海

原文链接:http:///?p=27363 

本文在相对简单的数据集上探索不同的时间序列技术。

相关视频

给定 5 年的商店商品销售数据查看文末了解数据获取方式,并要求您预测 10 家不同商店的 50 种不同商品在 3 个月内的销售额。

处理季节性的最佳方法是什么?商店应该单独建模,还是可以将它们合并在一起?

商店项目需求预测

自回归综合移动平均线 (ARIMA)

这 ARIMA 模型是可应用于非平稳时间序列的 ARMA 模型的推广。

import timeimport 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

所有商店似乎都显示出相同的趋势和季节性。


点击标题查阅往期内容

R语言中的时间序列分析模型:ARIMA-ARCH / GARCH模型分析股票价格

左右滑动查看更多

01

02

03

04

ARIMAX

带解释变量的自回归综合移动平均线 (ARIMAX) 是 ARIMA 的扩展版本,其中包括独立的预测变量。

准备数据

mnths = df_rinindx.nth



df_ran.drpna(iplac=True)

d_trin.head()

import datetimedumymns = 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

数据获取

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约