用AR模型预测产品销量

用AR(Autoregressive,自回归)模型来完成产品销量的预测。

1.可以直接用上一个月的销量来预测本月的销量吗?

如图1所示,新建“上月销量”和“本月销量”列;


图1.png

绘制“上月销量”和“本月销量”的散点图,如图2所示,发现这两者之间并没有明显的关联性。


图2.png

对这两个变量进行回归分析,结果如图3所示,根据p值0.52判断,“上月销量”与“本月销量”之间的关联性不大,所以只用“上月销量”来预测“本月销量”不可行。再根据R Square判断,其值约为0.007,表示这次的预测结果并不准确。


图3.png

R Square

  • 判定系数,R平方值。
  • 理论值区间是0 ~ 1。
  • ,表示“进行了完美的预测”。
  • ,表示“完全不着边际的预测”。
  • 举例,如果,表示预测的准确度只有50%。

根据上述分析结果,只用上月的销量来预测本月的销量是行不通的。因此,将销售的淡季和旺季纳入考虑,需要将过去的销量和每个月的特征作为解释变量,进行多元回归分析。

  • 过去的销量:1个月前的销量,2个月前的销量,……,12个月前的销量。
  • 每个月的特征:是否为1月,是否为2月,……,是否为12月。

2.准备虚拟解释变量

  1. 将源数据复制到新的工作表中,新建“1月虚拟变量”列,在第二行输入公式=IF(B2=1,1,0)计算这一列的数值。用同样的方法准备2月到12月的虚拟变量。

  2. 新建“1月前销量”列,将数据错开一行进行复制,删除2009年的数据和数据列末尾多余的行。结果如图4所示。


    图4.png

3.初步筛选解释变量

根据图4所得的月份虚拟变量的值可知,1月到12月的虚拟变量不能同时用于回归分析,因为其中一个月的值能从其他月份推算而得。比如,知道了1月到11月虚拟变量的值有一个为1,那么12月虚拟变量的值必定为0。所以,需要排序一个月份解释变量。

这里,根据月销量的均值来排除。选择月份和销量生成数据透视表,统计每月的平均销量,并按升序排列。结果如图5所示,最近接总体均值的是9月份,说明9月份的销量比较普通,所以,据此可排除9月虚拟变量。


图5.png

4.用各月的解释变量进行多元回归分析

  1. 用各月的解释变量进行多元回归分析,结果如图6所示。


    图6.png
  2. 删除图6中p值最大的“11月虚拟变量”,再次进行多元回归分析,结果如图7所示。


    图7.png
  3. 用类似步骤1和步骤2的方法,依次删除“5月虚拟变量-->12月虚拟变量-->4月虚拟变量-->1月虚拟变量-->6月虚拟变量-->7月虚拟变量-->删除10月虚拟变量”,进行多元回归分析,得到的结果如图8~图14所示。


    图8.png

    图9.png

    图10.png

    图11.png

    图12.png

    图13.png

    图14.png

根据图14所示结果,最后剩下的虚拟变量,p值都小于0.15。

5.用过去的销量做多元回归分析

  1. 用过去的销量进行多元回归分析,结果如图15所示。


    图15.png
  2. 根据多元回归分析结果的p值,排除p值最大的解释变量,再进行多元回归分析,直到分析结果如图16所示,解释变量的p值都小于0.15。


    图16.png

6.预测销量

上述分析使用的是2010 年1 月到2013 年12 月的数据,这里先对已有实测值的 2013年的销量进行预测,然后对实测值与预测值的差进行验证。步骤如下:

  1. 假设2013 年的销量未知。
  2. 由图16可知,“2 月虚拟变量”“3 月虚拟变量”“8 月虚拟变量”“1 个月前”“2 个月前”“4 个月前”这几个解释变量会影响销量,利用这些解释变量,对截至2012 年12 月的数据进行多元回归分析。
    调出加工前包括2009 年1 月~ 12 月的销量数据,删除除了“2 月虚拟变量”“3 月虚拟变量”“8 月虚拟变量”“1 个月前销量”“2 个月前销量”“4 个月前销量”之外的其他列。最终用于多元回归分析的数据如图17所示,分析结果如图18所示。


    图17.png

    图18.png

    图16所示的分析结果中,解释变量“4 个月前销量”的p值最大。而这里图18所示的分析结果中只有这一变量没有满足变量选择法“小于0.15”的标准。但是,R 平方值约为0.64,这与用2010 ~ 2013 年销量数据进行的分析几乎一样。

  3. 根据步骤2得到的分析结果,编写预测销量的公式。
    从多元回归分析结果中,复制“Coeffi cients”(回归系数),以“转置”的方式粘贴在“2013 年1 月”一行。将粘贴的值复制至2013 年2 月~ 12 月行,在“2013 年1 月”行输入预测值的公式:=J46+D46*K46+E46*L46+F46*M46+G46*N46+H46*O46+I46*P46,将预测值的公式复制至2013 年2 月~ 12 月行,计算出2013 年1 月~ 12月的预测值。
    图19.png

计算预测值时,最重要的是“回归系数”。回归系数表示解释变量的值每增加1,输出结果将随之增加(或减少)多少。比如,如果“2 月虚拟变量”为1,销量约增加249.15。所以,所有的解释变量分别乘以回归系数后相加,然后再与截距相加,就是目标变量的预测值。

根据图19所示,各月的销量= 截距+“2 月虚拟变量的值”ד2 月虚拟变量的回归系数”+“3 月虚拟变量的值”ד3 月虚拟变量的回归系数”+“8 月虚拟变量的值”ד8 月虚拟变量的回归系数”+“1 个月前的值”ד1 个月前的回归系数”+“2 个月前的值”ד2 个月前的回归系数”+“4 个月前的值”ד4 个月前的回归系数”。最终得到的预测值如图20所示。


图20.png

4.如图21所示, 比较2013年的销量的实测值和预测值,验证两者之间的差异。


图21.png

7.案例结论

2013 年1 月至12 月的实测值与预测值的差如图22所示。


图22.png

12 个月中有8 个月的偏差控制在了100 台以内,销售旺季3月的实际销量比预测多了173 台。如果考虑100 ~ 200 台的库存伸缩量,就能够抑制机会损失的风险,顺利完成次月部件的采购。

注意,在讨论目标变量的预测精确度的分析中,预测精确度并不是重点,能根据预测结果带来的综合效益才是关键。

在AR(Autoregressive,自回归)模型中,用的是1 个月前、2 个月前这类过去的值去预测进行1 个月后的时间序列性的数据。
AR模型不考虑“在某节点,理论上的预测值与实测值的误差是否会对下一个节点有影响”、“值是否呈现出每月有些许上升的倾向”等情况。
ARIMA(Autoregressive Integrated Moving Average,自回归移动平均)模型会将AR模型不考虑的情况考虑进去。

你可能感兴趣的:(用AR模型预测产品销量)