大纲:
-数据处理
-模型构建
-拟合效果
1.数据处理
真实业务数据。来源于特步四川分公司。
数据按照地区可以划分为:成都/乐山/南充/绵阳等;按品类可以划分为羽绒服/板鞋/短袖POLO等等。
数据时间跨度:2014年1月~2017年10月
样本:成都地区跑鞋销量预测
#读取数据
library(readxl)
Shoes2_Chengdu <- read_excel("Desktop/跑鞋区域数据.xlsx", sheet = "成都", col_types = c("date", "numeric"))
plot(Shoes2_Chengdu,type="line")
attach(Shoes2_Chengdu)
Quantity=as.numeric(Quantity)
detach(Shoes2_Chengdu)
绘制趋势图,对整体趋势有一个直观的感受:
节假日因素调整:因为特步在每年的春节,五一,十一等节假日都会举行促销活动。除了春节外,其他的节假日都在固定时间。我们所需要调整的是每年春节的不固定日期。
#调整春节因素,2014年春节在一月
a=Shoes2_Chengdu$Quantity[1]
Shoes2_Chengdu$Quantity[1]=Shoes2_Chengdu$Quantity[2]
Shoes2_Chengdu$Quantity[2]=a
如果有过小的值,代表是反季商品促销。(比如羽绒服在夏季的销量)直接做0值处理,不做预测(因为对销售决策制定没有指导意义)。
#剔除过小的值
for (i in 1:47)
{if(Shoes2_Chengdu$Quantity[i]<20)
Shoes2_Chengdu$Quantity[i]<-0
}
加载时间序列包,将数据整理成时间序列格式。
#加载时间序列程序包
library(tseries)
library(forecast)
library(dplyr)
library(stats)
#转换成时间序列
Shoes2_Chengduts<-ts(Shoes2_Chengdu$Quantity[1:47],fre=12,start=c(2014,01))
通过箱形图检测异常值:箱形图可以用来观察数据整体的分布情况,利用中位数,25/%