收藏 分销(赏)

基于SAS软件的时间序列实验的代码.doc

上传人:pc****0 文档编号:8727745 上传时间:2025-02-27 格式:DOC 页数:47 大小:284.50KB 下载积分:10 金币
下载 相关 举报
基于SAS软件的时间序列实验的代码.doc_第1页
第1页 / 共47页
基于SAS软件的时间序列实验的代码.doc_第2页
第2页 / 共47页


点击查看更多>>
资源描述
实 验 指 南 目 录 实验一 分析太阳黑子数序列··········································3 实验二 模拟AR模型·················································4 实验三 模拟MA模型和ARMA模型····································6 实验四 分析化工生产量数据··········································8 实验五 模拟ARIMA模型和季节ARIMA模型···························10 实验六 分析美国国民生产总值的季度数据·····························13 实验七 分析国际航线月度旅客总数数据·······························16 实验八 干预模型的建模·············································19 实验九 传递函数模型的建模·········································22 实验十 回归与时序相结合的建模·····································25 太阳黑子年度数据··················································28 美国国民收入数据··················································29 化工生产过程的产量数据············································30 国际航线月度旅客数据··············································30 洛杉矶臭氧每小时读数的月平均值数据································31 煤气炉数据························································35 芝加哥某食品公司大众食品周销售数据································37 牙膏市场占有率周数据··············································39 某公司汽车生产数据················································44 加拿大山猫数据····················································44 实验一 分析太阳黑子数序列 一、 实验目的:了解时间序列分析的基本步骤,熟悉SAS/ETS软件使用方法。 二、实验内容:分析太阳黑子数序列。 三、实验要求:了解时间序列分析的基本步骤,注意各种语句的输出结果。 四、实验时间:2小时。 五、实验软件:SAS系统。 六、实验步骤 1、开机进入SAS系统。 2、 创建名为exp1的SAS数据集,即在窗中输入下列语句: data exp1; input a1 @@; year=intnx(‘year’,’1jan1742’d,_n_-1); format year year4.; cards; 输入太阳黑子数序列(见附表) run; 3、 保存此步骤中的程序,供以后分析使用(只需按工具条上的保存按钮然后填写完提问后就可以把这段程序保存下来即可)。 4、 绘数据与时间的关系图,初步识别序列,输入下列程序: proc gplot data=exp1; symbol i=spline v=star h=2 c=green; plot a1*year; run; 5、 提交程序,在graph窗口中观察序列,可以看出此序列是均值平稳序列。 6、 识别模型,输入如下程序。 proc arima data=exp1; identify var=a1 nlag=24; run; 7、 提交程序,观察输出结果。初步识别序列为AR(3)模型。 8、 估计和诊断。输入如下程序: estimate p=3; run; 9、 提交程序,观察输出结果。假设通过了白噪声检验,且模型合理,则进行预测。 10、 进行预测,输入如下程序: forecast lead=6 interval=year id=year out=out; run; proc print data=out; run; 11、 提交程序,观察输出结果。 12、 退出SAS系统,关闭计算机。 实验二 模拟AR模型 一、 实验目的:熟悉各种AR模型的样本自相关系数和偏相关系数的特点,为理 论学习提供直观的印象。 二、 实验内容:随机模拟各种AR模型。 三、 实验要求:记录各AR模型的样本自相关系数和偏相关系数,观察各种序列 图形,总结AR模型的样本自相关系数和偏相关系数的特点 四、 实验时间:2小时。 五、 实验软件:SAS系统。 六、 实验步骤 1、开机进入SAS系统。 2、 模拟实根情况,模拟过程。 3、 在edit窗中输入如下程序: data a; x1=0.5; x2=0.5; n=-50; do i=-50 to 250; a=rannor(32565); x=a-0.6*x1+0.4*x2; x2=x1; x1=x; n=n+1; if i>0 then output; end; run; 4、观察输出的数据,输入如下程序,并提交程序。 proc print data=a; var x; proc gplot data=a; symbol i=spline c=red; plot x*n; run; 5、 观察样本自相关系数和偏相关系数,输入输入如下程 序,并提交程序。 proc arima data=a; identify var=x nlag=10 outcov=exp1; run; proc gplot data=exp1; symbol i=needle width=6; plot corr*lag; run; proc gplot data=exp1; symbol i=needle width=6; plot partcorr*lag; run; 6、 作为作业把样本自相关系数和偏相关系数记录下来。 7、 估计模型参数,并与实际模型的系数进行对比,即输入如下程序,并提交。 proc arima data=a; identify var=x nlag=10 ; run; estimate p=2; run; 8、 模拟虚根情况,模拟过程。重复步骤3-7即可(但部分程序需要修改,请读者自己完成)。 9、 模拟AR(3)模型,模拟过程。重复步骤3-7即可(但部分程序需要修改,请读者自己完成). 10、回到graph窗口观察各种序列图形的异同 11、退出SAS系统,关闭计算机. 实验三 模拟MA模型和ARMA模型 一、 实验目的:熟悉各种MA模型和ARMA模型的样本自相关系数和偏相关系数 的特点,为理论学习提供直观的印象。 二、 实验内容:随机模拟各种MA模型和ARMA模型。 三、 实验要求:记录各MA模型和ARMA模型的样本自相关系数和偏相关系数, 观察各序列的异同,总结MA模型和ARMA模型的样本自相关系 数和偏相关系数的特点 四、 实验时间:2小时。 五、 实验软件:SAS系统。 六、 实验步骤 1、 开机进入SAS系统。 2、模拟情况,模拟过程。 3 在edit窗中输入如下程序: data a; a1=0; a2=0; do n=-50 to 250; a=rannor(32565); x=a+0.65*a1+0.24*a2; a2=a1; a1=a; if n>0 then output; end; run; 4、观察输出的数据序列,输入如下程序,并提交程序。 proc gplot data=a; symbol i=spline; plot x*n; run; 5、观察样本自相关系数和偏相关系数,输入输入如下程 序,并提交程序。 proc arima data=a; identify var=x nlag=10 outcov=exp1; run; proc gplot data=exp1; symbol1 i=needle c=red; plot corr*lag=1; run; proc gplot data=exp1; symbol2 i=needle c=green; plot partcorr*lag=2; run; 6、 作为作业把样本自相关系数和偏相关系数记录下来。 7、 估计模型参数,并与实际模型的系数进行对比,即输入如下程序,并提交。 proc arima data=a; identify var=x nlag=10 ; run; estimate q=2; run; 8、 模拟情况,模拟过程。重复步骤3-7即可(但部分程序需要修改,请读者自己完成)。 9、 模拟情况,模拟过程。重复步骤3-7即可(但部分程序需要修改,请读者自己完成)。 10、 模拟情况,模拟过程。重复步骤3-7即可(但部分程序需要修改,请读者自己完成)。 11、 模拟ARMA模型,模拟过程。重复步骤3-7即可(但部分程序需要修改,请读者自己完成). 12、 回到graph窗口观察各种序列图形的异同。 13、 退出SAS系统,关闭计算机. 实验四 分析化工生产量数据 一、 实验目的:进一步熟悉时间序列建模的基本步骤,掌握用SACF及SPACF定 模型的阶的方法。 二、 实验内容:分析化工生产过程的产量序列。 三、 实验要求:掌握ARMA模型建模的基本步骤,初步掌握数据分析技巧。写出 实验报告。 四、 实验时间:2小时。 五、 实验软件:SAS系统。 六、 实验步骤 1、 开机进入SAS系统。 2、 创建名为exp2的SAS数据集,即在窗中输入下列语句: data exp2; input x @@; n=_n_; cards; 输入化工生产产量数据序列(见附表) ; run; 3、 保存此步骤中的程序,供以后分析使用(只需按工具条上的保存按钮然后填写完提问后就可以把这段程序保存下来即可)。 4、 绘数据与时间的关系图,初步识别序列,输入下列程序: proc gplot data=exp2; symbol i=spline v=star h=2 c=green; plot x*n; run; 5、 提交程序,在graph窗口中观察序列,可以看出此序列是均值平稳序列。 6、 识别模型,输入如下程序。 proc arima data=exp2; identity var=x nlag=12; run; 7、 提交程序,观察输出结果,发现二阶样本自相关系数和一阶的样本偏相关系数都在2倍的标准差之外,那么我们首先作为一阶AR模型估计,输入如下程序: estimate plot p=1; run; 8、 提交程序,观察输出结果,发现残差能通过白噪声检验,但它的二阶的样本偏相关系数比较大,那么我们考虑二阶AR模型。输入如下程序: estimate plot p=2; run; 9、 提交程序,观察输出结果,发现残差样本自相关系数和样本偏相关系数都 在2倍的标准差之内。且能通过白噪声检验。比较两个模型的AIC和SBC, 发现第二个模型的AIC和SBC都比第一个的小,故我们选择第二个模型为 我们的结果。 10、 记录参数估计值,写出模型方程式。 11、 进行预测,输入如下程序: forecast lead=12 out=out; run; proc print data=out; run; 12、 提交程序,观察输出结果。 13、 退出SAS系统,关闭计算机。 实验五 模拟ARIMA模型和季节ARIMA模型 一、 实验目的:熟悉各种ARIMA模型的样本自相关系数和偏相关系数的特点, 区别各种ARIMA模型的图形,为理论学习提供直观的印象。 二、 实验内容:随机模拟各种ARIMA模型。 三、 实验要求:记录各ARIMA模型的样本自相关系数和偏相关系数观察各序列 图形的异同,总结ARIMA模型的样本自相关系数和偏相关系数 的特点 四、 实验时间:2小时。 五、 实验软件:SAS系统。 六、 实验步骤 2、 开机进入SAS系统。 2、模拟ARIMA(0,1,1)过程,模拟过程。 3、 创建数据集,在edit窗中输入如下程序: data a; x1=0.9; a1=0; do n=-50 to 250; a=rannor(32565); x=x1+a-0.8*a1; x1=x; a1=a; if n>0 then output; end; run; 4、观察输出的数据序列,输入如下程序:。 proc gplot data=a; symbol i=spline; plot x*n; run; 5、提交程序,在Graph窗口中观察图形。 6、观察样本自相关系数和偏相关系数,输入输入如下程序: proc arima data=a; identify var=x nlag=10 outcov=exp1; run; proc gplot data=exp1; symbol1 i=needle c=red; plot corr*lag=1; run; proc plot data=exp1; symbol2 i=needle c=green; plot partcorr*lag=2; run; 7、 提交程序,发现自相关系数成缓慢下降的趋势,说明要做差分运算,做一阶差分运算,输入如下程序: proc arima data=a; identity var=x(1) nlag=24; run; 8、 提交程序,观察样本自相关系数与样本偏相关系数,发现自相关系数1阶截尾,故判断差分后序列为MA(1)模型。进行模型参数估计,输入如下程序: estimate q=1 plot; run; 9、 提交程序,并观察残差图,发现模型拟合完全。 10、写出模型的方程,并与真实模型对比。 11、模拟ARIMA(1,1,0)模型,模拟过程。重复步骤 3-10即可(但部分程序需要修改,请读者自己完成)。 12 模拟模型, 模拟模型, 即模型。 13、创建数据集,在edit窗中输入如下程序: data c; x1=0.9;x2=0;x3=0;x4=0;x5=0;x6=0;x7=0; x8=0;x9=0;x10=0;x11=0;x12=0;x13=0; a1=0;a2=0;a3=0;a4=0;a5=0;a6=0;a7=0; a8=0;a9=0;a10=0;a11=0;a12=0;a13=0; do n=-50 to 250; a=rannor(12345); x=x1+x12-x13+a-0.4*a1-0.6*a12+0.24*a13; x13=x12;x12=x11;x11=x10;x10=x9;x9=x8;x8=x7; x7=x6;x6=x5;x5=x4;x4=x3;x3=x2;x2=x1;x1=x; a13=a12;a12=a11;a11=a10;a10=a9;a9=a8;a8=a7; a7=a6;a6=a5;a5=a4;a4=a3;a3=a2;a2=a1;a1=a; if n>0 then output; end; run; 14、 绘序列图,输入如下程序: proc gplot data=c; symbol i=spline c=red; plot x*n; run; 15、 提交程序,到graph窗口中观察序列图形。 16、 初步识别模型,输入如下程序: proc arima data=c; identify var=x nlag=36; run; 17、 提交程序,观察样本自相关系数和样本偏相关系数。 18、 做季节差分和一阶差分除掉季节因子和趋势因子,输入如下程序: identify var=x(1,12) nlag=36; run; 19、 提交程序,观察样本自相关系数和样本偏相关系数,确定模型阶数。 20、 估计模型参数,输入如下程序: estimate q=(1)(12) method=uls plot; run; 21、 提交程序,观察残差的样本自相关系数和样本偏相关系数,看是否通过 了白噪声检验。写出模型方程式,并与真实模型对比。 22、 回到graph窗口观察各种序列图形的异同。 23、 退出SAS系统,关闭计算机. 实验六 分析美国国民生产总值的季度数据 一、实验目的:进一步学习数据分析技巧,进一步了解ARIMA模型。 二、实验内容:47年1季度到96年3季度美国国民生产总值的季度数据。 三、实验要求:写出分析报告。 四、实验时间:2小时。 五、实验软件:SAS系统。 六、实验步骤 1、开机进入SAS系统。 2、建立名为exp3的SAS数据集,输入如下程序: data exp3; input gnp@@; date=intnx(‘qtr’,’1jan47’d,_n_-1); format date yyqc.; cards; 输入美国国民生产总值的数据 ; run; 注:Intnx函数按间隔递增日期,Intnx函数计算某个区间经过若干区间间 隔之后的间隔的开始日期或日期时间值,其中开始间隔内的一个日期或 日期时间值给出。 Intnx函数的格式如下: Intnx(interval,from,n) 3 保存上述程序,供以后分析使用(只需按工具条上的保存按钮,然后填写 完提问后就可以把这段程序保存下来)。 4、 绘序列图,输入如下程序: proc gplot data=exp3; symbol1 i=spline; plot gnp*date=1; run; 5、 观察图形,发现图形成指数函数上升形式,故做对数变换,输入如下程序: data lexp; set exp3; lgnp=log(gnp); run; 6、 绘变换后序列图,输入如下程序: proc gplot data=lexp; symbol2 i=spline c=red; plot lgnp*date=2; run; 7、 提交程序,到graph窗口中观察变换后的序列图,可以看出它成直线上升趋势。对序列做初步识别,输入如下程序: proc arima data=lexp; identify var=lgnp nlag=12; run; 8、 提交程序,观察样本自相关系数,可看出有缓慢下降趋势,结合我们观察的图形,我们知道要对序列做差分运算,作一阶差分,输入如下程序: identify var=lgnp(1) nlag=12; run; 9、 提交程序,观察样本自相关系数,可看出样本自相关系数5步后是截尾的,那么确定为MA(5)模型,进行参数估计,输入如下程序: estimate q=5 plot; run; 10、 提交程序,观察输出结果,可看出模型通过了白噪声检验,说明模型拟合充分。且MA1,3 , MA1,4的T值较小,说明参数显著为0,除掉这两项重新进行估计,输入如下程序: estimate q=(1,2,5) plot; run; 11、 提交程序,观察输出结果,可看出模型通过了白噪声检验,说明模型拟合充分,且残差标准误与前一估计相差很小,故以此结果为我们所要的结果,依此结果写出方程式。 12、 进行预测,预测美国未来2年的每季国民生产总值。输入如下程序: forcast lead=6 interval=qtr id=date out=results; run; data results; set results; gnp=exp(lgnp); l95=exp(l95); u95=exp(u95); forecast=exp(forecast+std*std/2); run; proc print data=results; var date forcast; where date>=’1jan96’d; run; 13、 提交程序,并把预测值记录下来。 14、 退出SAS系统,关闭计算机。 实验七 分析国际航线月度旅客总数数据 一、 实验目的:熟悉运用SAS建立模型的方法,进一步 了解模型的特征。 二、实验内容:19497年1月至1960年12月国际航线月度旅客总数数据。 三、实验要求:写出分析报告。 四、实验时间:2小时。 五、实验软件:SAS系统。 六、实验步骤 1、开机进入SAS系统。 2、建立名为exp4的SAS数据集,输入如下程序: data exp4; input air@@; date=intnx(‘month’,’1jan49’d,_n_-1); format date monyy.; cards; 输入国际航线月度旅客总数数据 ; run; 3、 保存上述程序,供以后分析使用(只需按工具条上的保存按钮,然后填写 完提问后就可以把这段程序保存下来)。 4、 绘序列图,输入如下程序: proc gplot data=exp4; symbol1 i=spline v=dot c=red; plot air*date=1; run; 5、 提交程序,观察图形,发现图形有很强的季节性,且成指数函数上升形式,故做对数变换,输入如下程序: data lair; set exp4; lair=log(air); run; 6、 绘变换后序列图,输入如下程序: proc gplot data=lair; symbol2 i=spline c=green; plot lair*date=2; run; 7、 提交程序,到graph窗口中观察变换后的序列图,可以看出它总的趋势成直线上升,且有很强的季节性。对序列做初步识别,输入如下程序: proc arima data=lair; identify var=lair nlag=36; run; 8、 提交程序,观察样本自相关系数和偏相关系数,可看出样本自相关系数有缓慢下降趋势,偏相关系数在1步,13步,25步较大,我们作一步一阶差分,输入如下程序: identity var=lair(1) nlag=36; run; 9、 提交程序,观察样本自相关系数和偏相关系数,发现样本自相关系数在12步,24步,36步特别大,而偏相关系数在12步特别大,那么我们再做12步的一阶差分,输入如下程序: identify var=lair(1,12) nlag=36; run; 10、提交程序,观察样本自相关系数和偏相关系数,发现样本自相关系数在 1步,12步特别大,而偏相关系数看不出有特别的规律,我们可确定模型 的MA因子为。 11、进行参数估计,输入如下程序: estimate q=(1)(12)noconstant method=uls plot; run; 12 、提交程序,观察输出结果,可看出模型通过了白噪声检验,说明模型拟 合充分,故以此结果为我们所要的结果,依此结果写出方程式。 13、进行预测,输入如下程序: forecast lead=36 interval=month id=date out=b; run; proc print data=b; run; 14、提交程序,仔细观察预测的结果有什么规律,思考为什么有这样的规律? 15、变换预测值,以获取原度量下的预测值,输入如下程序: data c; set b; air=exp(lair); forecast=exp(forecast+std*std/2); l95=exp(l95); u95=exp(u95); run; proc print data=c; run; 16、 绘预测和置信限的散点图,输入如下程序: symbol1 I=none v=star r=1 c=red; symbol2 I=join v=plus r=1 c=green; symbol3 I=join v=none l=3 r=1 c=blue; proc gplot data=c; where data>=’1jan59’d; plot air*date=1 forecast*date=2 l95*date=3 u95*date=3/ overlay haxis=’1jan59’d to ‘1jan62’d by year; run; 17、 提交程序,观察图形。 18、 退出SAS系统,关闭计算机。 实验八 干预模型的建模 一、 实验目的:掌握干预模型的分析方法,进一步熟悉ARIMA过程的使用方法。 二、实验内容:1955年1月至1972年12月洛杉矶月平均臭氧数据。 三、实验要求:写出实验报告,掌握干预模型的建模方法。 四、实验时间:2小时。 五、实验软件:SAS系统。 六、实验步骤 1、开机进入SAS系统。 2、建立名为exp5的SAS数据集,输入如下程序: data exp5; input n ozone x1 summer winter@@; date=intnx(‘month’,’1jan55’d,_n_-1); format date monyy.; cards; 输入洛杉矶月平均臭氧数据 ; run; 或者输入如下程序: data exp5; input ozone @@; date=intnx(‘month’,’1jan55’d,_n_-1); format date monyy.; month=month(date); year=year(date); x1=year>=1960; summer=(5<month<11)*(year>1965); winter=(year>1965)-summer; cards; 只输入 ozone 一栏的数据 ; run; 3、 保存上述程序,供以后分析使用(只需按工具条上的保存按钮,然后填写 完提问后就可以把这段程序保存下来)。 4、绘序列图,输入如下程序: proc gplot data=exp5; symbol1 i=spline v=dot c=red; plot ozone*date=1; run; 5、提交程序,观察图形,发现图形有很强的季节性和缓慢下降的趋势。 6、 初步识别模型,输入如下程序: identify var=ozone nlag=36; run; 7、 提交程序,观察样本自相关系数和偏相关系数,可看出样本自相关系数在1步,12步,24步,36步都较大,且具有周期性,偏相关系数在1步最大,我们作季节差分,输入如下程序: identify var=ozone(12) nlag=36; run; 8、 提交程序,观察样本自相关系数和偏相关系数,发现样本自相关系数在 1步,12步较大,而偏相关系数在1步,12步,24步都较大,且呈现拖尾 现象,我们可确定模型的MA因子为。 9、进行参数估计,输入如下程序: estimate q=(1)(12)noconstant method=uls plot; run; 10、提交程序,观察输出结果,可看出模型不是很干净,且不能通过白噪声 检验。我们可以做残差序列图,观看残差的特性,输入如下程序: forecast lead=12 out=b id=date interval=month id=date; run; 11、进行预测,输入如下程序: forecast lead=36 interval=month id=date out=b noprint; run; proc gplot data=b; symbol I=spline v=dot c=red; plot residual*date; run; 12、提交程序,观察图形,可看出前面一段时期的残差比后面的要大。 13、我们考察修建高速公路后,是否对臭氧有显著性影响,输入如下程序: proc arima data=exp5; identify var=ozone(12) crosscorr=(x1(12)) noprint; estimate q=(1)(12) input(x1) noconstant method=ml itprint plot; run; 14、提交程序,观察输出结果,发现模型的标准差,AIC,SBC都变小了很多, 且x1的影响显著。思考为什么要对x1进行季节差分? 15、我们再来考察汽车装上尾气过滤器,是否对臭氧有显著性影响,输入如 下程序: proc arima data=exp5; identify var=ozone(12) crosscorr=(x1(12) summer winter) noprint; estimate q=(1)(12) input(x1 summer winter) noconstant method=ml itprint plot; run; 16、 提交程序,观察输出结果,发现模型的标准差,AIC,SBC都变小了,且 模型基本上通过了白噪声检验,并且x1,summer的影响显著,而winter 的影响不显著。思考为什么不对summer和 winter进行差分? 17、进行预测值,输入如下程序: forecast lead=12 id=date interval=month; run; 注:这样的预测是x1,summer,winter已知的预测。 18、提交程序,观察预测值。 19、退出SAS系统,关闭计算机。 实验九 传递函数模型的建模 一、 实验目的:熟悉传递函数模型的建模方法。 二、实验内容:煤气炉数据。 三、实验要求:写出实验报告,总结传递函数模型的建模的一般步骤。 四、实验时间:2小时。 五、实验软件:SAS系统。 六、实验步骤 1、开机进入SAS系统。 2、建立名为exp6的SAS数据集,输入如下程序: data exp6; input x y@@; t=_n_; cards; 输入煤气炉数据 ; run; 3、 保存上述程
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服