销量预测
实验基础信息
-
实验名称:销量预测
-
实验英文名:SalesForecast
-
所属类目:新零售
-
实验描述:利用公司旗下连锁零售店的销售数据和各个店铺特征,预测各个店铺未来N天的销售额。
-
主要应用算法:Sarima、GBDT回归
数据说明
-
数据来源:Rossmann公司旗下200家零售店从2013-01-01到2015-07-31的销售额数据,数据包含所有店铺的销售额数据以及店铺的一些特征,来自Kaggle比赛数据。
-
数据属性:结构化数据,回归预测销售额。
-
数据详情:数据集包含店铺ID、销售额、当天是否关门、当天是否为假期、店铺类型、店铺周围有无竞争的店铺、以及与竞争店铺的距离等16个字段,共有181040行。
实验搭建
实验整体流程如下:

-
读数据表:读入店铺销量数据

-
Python脚本:选择出店铺ID为1的零售店其两年多的销售额。

-
缺失值填充:填充销售额缺失值,以门店销售额均值填充;

-
异常处理组件:采用z_score_3方法对销售额超出3-sigma的异常数据处理;
-
Sarima:预测店铺1随时间的未来5天销售额;

-
label编码: 对string的分类特征进行标签编码;

-
缺失值填充:对数值类型的数据进行均值填充;
-
列拆分:去掉日期和店铺ID列;
-
拆分:将训练数据和测试数据按8:2的比例进行行的拆分;

-
GBDT回归:用训练数据训练GBDT回归模型;

以上是店铺各个特征的特征重要性。
-
预测:用训练好的模型预测测试数据;

-
列合并:合并真实值、预测值;

-
回归模型评估:评估模型结果,R方值为0.97,效果较好。


残差值在0附近的比例最高,预测结果较好。