SPSS随机时间序列分析技巧RandomTimeSeriesAnalyticalSkillsForSPSS一、时间序列分析概述时间序列是按时间顺序排列的、随时间变化且相互关联的数据序列。分析时间序列的方法构成数据分析的一个重要领域,即时间序列分析.时间序列根据所研究的依据不同,可有不同的分类1.按研究对象多少分:一元时间序列和多元时间序列;2.按时间连续性分:离散时间序列和连续时间序列;3.按序列的统计特性分:平稳时间序列和非平稳时间序列;4.按时间序列分布规律分:高斯型和非高斯型时间序列.国内生产总值等时间序列年份国内生产总值(亿元)年末总人口(万人)人口自然增长率(‰)居民消费水平(元)19901991199219931994199519961997199818547.921617.826638.134634.446759.458478.167884.674772.479552.811433311582311717111851711985012112112238912362612481014.3912.9811.6011.4511.2110.5510.4210.069.538038961070133117812311272629443094时间序列时间序列分析发展的两个阶段主要内容:•平稳时间序列分析—Box-Jenkins(1976)•非平稳时间序列分析—Engle-Granger(1987)•时间序列模型不同于经济计量模型的两个特点是:-这种建模方法不以经济理论为依据,而是依据变量自身的变化规律,利用外推机制描述时间序列的变化。-明确考虑时间序列的平稳性。如果时间序列非平稳,建立模型之前应先通过差分或者协整把它变换成平稳的时间序列,再考虑建模问题。2如果一个时间序列的概率分布与时间t无关,则称该序列为严格的(狭义的)平稳时间序列。如果序列的一、二阶矩存在,且对任意时刻t满足:(1)均值为常数(2)方差为常数(3)协方差为时间间隔k的函数则称该序列为宽平稳时间序列,也叫广义平稳时间序列。以后所研究的时间序列主要是宽平稳时间序列.)(tYE22)()(ttYEYD))((),cov(kttkttkYYEYY平稳时间序列平稳过程例1—i.i.d序列•一个最简单的随机时间序列是独立同分布标准正态分布序列:050100150200250300350400450500-3-2-10123~..01tttXuuiidN(,)平稳过程例2—自回归过程•AR(1)050100150200250300350400450500567891011121314152120.8~(0,)ttttXXWN3§1确定性时间序列分析方法概述时间序列预测技术就是通过对预测目标自身时间序列的处理,来研究其变化趋势的。一个时间序列往往是以下几类变化形式的叠加或耦合。(1)长期趋势变动。是指时间序列朝着一定的方向持续上升或下降,或停留在某一水平上的倾向,它反映了客观事物的主要变化趋势。(2)季节变动。(3)循环变动。通常是指周期为一年以上,由非季节因素引起的涨落起伏波形相似的波动。(4)不规则变动。通常它分为突然变动和随机变动。时间序列数据的分解趋势随机循环或者季节性Xttime通常用Tt表示长期趋势项,St表示季节变动趋势项,Ct表示循环变动趋势项,Rt表示随机干扰项。常见的确定性时间序列模型有以下几种类型:加法模型乘法模型混合模型ytTtStCtRtytTtStCtRtytTtStRt,ytStTtCtRtt其中yt是观测目标的观测记录,E(Rt)0,E(R2)2如果在预测时间范围以内,无突然变动且随机变动的方差σ2较小,并且有理由认为过去和现在的演变趋势将继续发展到未来时,可用一些经验方法进行预测,具体方法如下:45设观测序列为y1,…,yT,取移动平均的项数NT一次移动平均值计算公式1.移动平均法)(1)(1)(1)(1)1(1111)1(NtttNttNttNttttyyNMyyNyyNyyyNM6当预测目标的基本趋势是在某一水平上下波动时,可用一次移动平均方法建立预测模型:)(1)(1)1()1()2(11)1(1)1()1()2(NtttNttttMMNMMMMNM二次移动平均)(1ˆ11)1(1NtttttyyyNMy其预测标准误差为NTyySTNttt12)ˆ(7ˆ最近N期序列值的平均值作为未来各期的预测结果。一般N取值范围:5≤N≤200。当历史序列的基本趋势变化不大且序列中随机变动成分较多时,N的取值应较大一些。否则N的取值应小一些。在有确定的季节变动周期的资料中,移动平均的项数应取周期长度。选择最佳N值的一个有效方法是,比较若干模型的预测误差。均方预测误差最小者为好.当预测目标的基本趋势与某一线性模型相吻合时,常用二次移动平均法,但序列同时存在线性趋势与周期波动时,可用趋势移动平均法建立预测模型:yTmaTbTm,m1,2,其中)(1)T(2)T(1)T(2)T(MaT2MM,bTM2N1月份t123456销售收入yt533.8574.6606.9649.8705.1772.0月份t789101112销售收入yt816.4892.7963.91015.11102.7例1某企业1月~11月份的销售收入时间序列如下表所示。取N=4,试用简单一次滑动平均法预测第12月份的销售收入,并计算预测的标准误差.Matlab程序y=[533.8574.6606.9649.8705.1772.0816.4892.7963.91015.11102.7];temp=cumsum(y);%求累积和mt=(temp(4:11)-[0temp(1:7)])/4;y12=mt(end)ythat=mt(1:end-1);fangcha=mean((y(5:11)-ythat).^2);sigma=sqrt(fangcha)结果temp=1.0e+003*0.53381.10841.71532.36513.07023.84224.65865.55136.51527.53038.6330mt=591.2750634.1000683.4500735.8250796.5500861.2500922.0250993.6000y12=993.6000ythat=591.2750634.1000683.4500735.8250796.5500861.2500922.0250fangcha=2.2654e+004sigma=150.512110112.指数平滑法一次移动平均实际上认为最近N期数据对未来值影响相同,都加权1/N;而N期以前的数据对未来值没有影响,加权为0。但二次及更高次移动平均数的权数却不是1/N,且次数越高,权数的结构越复杂,但永远保持对称的权数,即两端项权数小,中间项权数大,不符合一般系统的动态性。一般说来历史数据对未来值的影响是随时间间隔的增长而递减的。所以更切合实际的方法应是对各期观测值依时间顺序进行加权平均作为预测值。指数平滑法可满足这一要求,而且具有简单的递推形式.指数平滑的基本公式1)1(tttSyS,(1),(1)2,…,设观测序列为y1,…,yT,α为加权系数,0α1,一次指数平滑公式为:假定历史序列无限长,则有由于加权系数序列呈指数函数衰减,加权平均又能消除或减弱随机干扰的影响,所以称为一次指数平滑.一次指数平滑预测:12)1(1)1()1(tttSyS表明St(1)是全部历史数据的加权平均,加权系数分别为1)1(21)1()1(])1()[1(jjtjttttySyyS1)1(1)1(1jj一次指数平滑1ˆ)1(ˆtttyyy13类似地有二次指数平滑公式三次指数平滑公式P次指数平滑公式)2(1)1()2()1(tttSSS)3(1)2()3()1(tttSSS)(1)1()()1(ptptptSSS利用指数平滑公式可以建立指数平滑预测模型。原则上说,不管序列的基本趋势多么复杂,总可以利用高次指数平滑公式建立一个逼近很好的模型,但计算量很大。因此用的较多的是几个低阶指数平滑预测模型。1)一次指数平滑预测2)二次指数平滑预测:(适用线性趋势数列)-Brown单系数线性平滑预测)1(1ˆttSy)(,其中)2()1()2()1(--1-2,2,1,ˆttttttttmtSSbSSammbay指数平滑预测3)三次指数平滑预测:(适用于二次曲线趋势数列)-Brown单系数二次式平滑预测,]2-[)-1(2])34()4-2(5-)56[)-1(23-3,2,1,ˆ)3()2()1(22)3()2()1(2)3()2()1(2tttttttttttttttmtSSScSSSbSSSammcmbay(,其中由于指数平滑公式是递推计算公式,必须确定初始值可以取前3~5个数据的算术平均值作为初始值。.)3(0)2(0)1(0,,SSS16指数平滑预测模型以时刻t为起点,综合历史序列信息,对未来进行预测。选择合适的加权系数α是提高预测精度的关键环节。据经验,α的取值范围一般以0.1~0.3为宜。α值愈大,加权系数序列衰减速度愈快,所以α取值大小起着控制参加平均的历史数据个数的作用。α值愈大意味着采用的数据愈少。因此可得到选择α值的一些基本准则。(1)如果序列的基本趋势比较稳,预测偏差由随机因素造成,则α值应取小一些,以减少修正幅度,使预测模型能包含更多历史数据的信息。(2)如果预测目标的基本趋势已发生系统地变化,则α值应取得大一些。这样,可以偏重新数据的信息对原模型进行大幅度修正,以使预测模型适应预测目标的新变化.时间t12345678价格yt16.4117.6216.1515.5417.2416.8318.1417.05例2下表数据是某股票在8个连续交易日的收盘价,试用一次指数平滑法预测第9个交易日的收盘价(初始值S0(1)=y1,α=0.4)19Matlab程序alpha=0.4;y=[16.4117.6216.1515.5417.2416.8318.1417.05];s1(1)=y(1);fori=2:8s1(i)=alpha*y(i)+(1-alpha)*s1(i-1);endyhat9=s1(end)sigma=sqrt(mean((s1(1:end-1)-y(2:end)).^2))运行结果s1=16.4100yhat9=17.1828sigma=0.9613Matlab程序clc,clearalpha=0.4;y=[16.4117.6216.1515.5417.2416.8318.1417.05];s1(1)=y(1);fori=2:8s1(i)=alpha*y(i)+(1-alpha)*s1(i-1);ends2=y(1);fori=2:8s2(i)=alpha*s1(i)+(1-alpha)*s2(i-1);enda8=2*s1(8)-s2(8)b8=alpha/(1-alpha)*(s1(8)-s2(8))yhat9=a8+b8yhat(1)=y(1)fori=2:8yhat(i)=s1(i-1)+1/(1-alpha)*(s1(i-1)-s2(i-1));endtemp=sum((yhat-y).^2);sigma=sqrt(temp/6)运行结果:a8=17.3801b8=0.1315yhat9=17.5116yhat=16.4100sigma=1.2054预测结果不如一次指数平滑法预测的预测结果。2146二、平稳时间序列模型这里的平稳是指宽平稳,其特性是序列的统计特性不随时间平移而变化