<!DOCTYPE html>
中国快递包裹总量:基于SARIMA模型的预测
shangfr
2015年10月28日
目前,我国快递业务总量已成为全球第一。国家邮政局发布的数据显示,2015年4月底,快递业务量完成15亿件,同比增长50.9%。目前,快递业务量增速已连续50个月超过50%,尤其是网购旺季(双十一、双十二等),我国快递包裹在当月的总量在世界范围内没有任何国家可以相比。 电子商务的兴盛有效带动快递行业的高速发展,反之,快递行业的提升也为电子商务的增长提供配套支撑。不过,快递业在迅猛发展的同时,也让行业“亚健康”的现状越发凸显。业内人士表示,虽然国内快递行业仍在高速增长,但目前运营“压力山大”,比如人员、车辆、场地等问题。 国家统计局网站公布的快递包裹量数据可以看作是标准的时序数据,但与普通时序数据不同的是,它的数值变化存在明显的季节性波动。处理季节性时间序列只用ARMA方法是不够的。描述这类序列的模型之一是季节时间序列模型(Seasona ARIMA Model),用SARIMA表示。本文旨在通过SARMA模型研究中国快递包裹总量变化情况,并测算合理参数构建模型用于预测,以帮助有关部门提前了解快递量需求,做好相应对策。从国家统计局网站下载2003年1月至2014年12月的快递量-当期值(万件),首先,通过时间序列图对快递包裹量变化情况作一个直观判断。
library(tseries)#加载时间序列程序包library(forecast)
## Loading required package: zoo## ## Attaching package: 'zoo'## ## The following objects are masked from 'package:base':## ## as.Date, as.Date.numeric## ## Loading required package: timeDate## This is forecast 6.1
require(graphics)#快递包裹量(国家统计局数据)exp=structure(c(1119.7, 986.9, 1319.8, 1436.2, 1402.3, 1572.7, 1435.4, 1592, 1678.2, 1425.8, 1575.2, 1695.1, 1277.7, 1410, 1666.9, 1688.5, 1600.5, 1796.8, 1656.9, 1871.4, 1772.8, 1543.9, 1707, 1798.4, 1549.8, 1369.4, 1822.8, 1903.7, 1826.6, 1988, 1884, 2161.2, 2289.2, 1906.4, 2013.5, 2164.1, 1798.7, 1768.4, 2132.4, 2236.2, 2112.9, 2373.3, 2655.1, 2637.4, 2601.5, 2159.3, 2213.2, 2315.8, 2235.1, 1858.7, 2773.9, 2693.6, 2526.3, 2866.6, 2861, 3274.9, 3116.5, 2643.7, 2795.9, 2984.4, 11227.7, 9137, 13350.8, 11220.4, 12187.4, 12824.5, 12571.6, 13582.5, 13471.2, 13351.5, 13236.4, 15168.2, 10971.8, 11781, 15292.7, 14593.4, 14829.1, 15714.1, 16273.1, 16850.4, 17791.9, 14853.5, 17534.8, 19299, 17065.7, 11147.1, 19083.3, 18193.8, 18661.1, 19438, 19308.2, 19710.6, 21535.3, 20162.9, 23220, 26366.2, 25301.6, 17177.4, 28645.4, 28015, 29113.8, 30078.4, 29599, 31235.6, 32462.6, 33414.7, 39393.8, 42873.8, 27319.4, 35164.2, 41850.9, 40373.8, 48993.9, 45447.6, 46244.9, 46561.8, 51345.3, 52421.3, 67126.6, 65698.4, 68917.7, 35473.1, 67043.8, 66249.4, 74178.7, 72154.1, 74802.1, 75266.7, 83637.1, 85303.5, 108703.4, 106945.3, 88950, 68886.2, 102528.2, 105417.5, 111634.7, 112926.3, 111245.1, 114050.7, 122992, 128997.1, 164616.5, 163681.1), .Tsp = c(2003, 2014.91666666667, 12), class = "ts")ts.plot(exp)#作这个时间序列的图,通过图作一个直观判断
从上图可以看出,从2008年开始,我国快递包裹量呈级数增长,并且存在明显的周期性变化,快递行业在此期间飞速发展。这种周期是由于季节性变化(包括季度、月度、周度等变化)或其他一些固有因素引起的。这类序列称为季节性序列。在快递包裹运输领域中,季节性影响是不可避免的。处理季节性时间序列只用ARMA方法是不够的。描述这类序列的模型之一是季节时间序列模型(Seasonal ARIMA Model),用SARIMA表示。
par(mfrow=c(1,2))acf(exp)#查看自相关图pacf(exp)#查看偏相关图
经过图形观察,可以初步判断出: 1.我国快递包裹量有明显呈级数增长趁势; 2.包裹量的变化存在季节性因素; 3.通过自相关-偏自相关图可以看出,应该使用MA()模型来拟合。 接下来使用R软件时间序列包的decompose函数对包括时序数据进行分解,分别为随机、趋势、季节。
x<-decompose(exp)#通过decompose 进行分解:随机、趋势、季节plot(x)#作图查看
通过随机、趋势、季节三张图可以看出,我国快递包裹量呈级数增长;包裹量的变化存在季节性因素;时序随机性变化平稳。
plot(x$seasonal)
通过以上分析,选择ARIMA(0,1,1)(0,1,1)[12]模型拟合数据效果最好,下面进行模型定阶检验:
exp.fit <- arima(exp,order=c(0,1,1), seasonal=list(order=c(0,1,2), period=12))nobs(exp.fit)
## [1] 131
tsdiag(exp.fit)
arimafit<-auto.arima(exp)plot(forecast(arimafit,h=20))
模型预测
arimafit<-auto.arima(exp)plot(forecast(arimafit,h=20))
exp.forecast <- forecast(exp,4)#给出80%,95%置信度下的置信区间,向前预测12期,默认情况下24期plot.forecast(exp.forecast)
b=exp.forecast$mean #2015年预测值a=c(144570.40,81779.50,142537.80,151483.90) #2015年真实值(b-a)/a#误差
## Jan Feb Mar Apr## 2015 0.7768333 1.3146107 0.8487638 0.6584730
除了二月份,其余三个月的预测值可以说非常准。二月份之所以不准,主要原因是赶上春节假期,全国休假,包裹量骤降是必然的。 综上所诉,针对带有季节波动性的时序数据,SARIMA模型明显优于ARIMA模型。通过SARIMA模型的预测结果可以看出,今后几年,我国快递行业将保持持续快速发展态势。全国还有将近一半的乡镇不通快递。在这些乡镇,人们网购还不像北上广等大城市居民那样方便。还有很多农民盼望着快递企业可以帮助他们利用网络打开市场。因此,中国快递市场增长空间仍然十分巨大。
反馈与建议
Author:shangfr
shangfr@foxmail.com