请教matlab下建立AR模型的问题(附代码)
小弟刚开始学ar模型,打算用此模型根据已有的101时间序列个数据,预测接下来的数据,在网上查了许多资料,但是都没有相对比较完整的代码,我自己连拼带凑写了几行,不知对不对,附带把不清楚的地方用红色字体标注出来了,麻烦各位大侠指点一下,十分感谢!x=load('d:/traffic.txt');
y=aryule(x,4);%建立4阶模型,求出y = a1y + a2y + .....+ap 的预测系数a(p)
%这一步在matlab命令窗口执行后显示如下信息:
%y =1.0000 -1.0202 0.0799 0.1174 -0.1629
z=idpoly(,[]);%把多项式转换成模型
%这一步在matlab命令窗口执行后显示如下信息:
%Discrete-time IDPOLY model: A(q)y(t) = e(t)
%A(q) = 1 - 1.02 q^-1 + 0.07993 q^-2 + 0.1174 q^-3 - 0.1629 q^-4
%
%This model was not estimated from data. (Question1:这是什么意思?难道我的数据没有用到吗?)
%Sampling interval: 1
m=iddata(,[]);%Question2:这一行是什么用处?
%这一步在matlab命令窗口执行后显示如下信息:
%Time domain data set with 101 samples.
%Sampling interval: 1
%
%Outputs Unit (if specified)
%y1
n=ar(x,4,'yw');%Question3:这样就把模型建立好了吗?
%这一步在matlab命令窗口执行后显示如下信息:
%Discrete-time IDPOLY model: A(q)y(t) = e(t)
%A(q) = 1 - 1.02 q^-1 + 0.07993 q^-2 + 0.1174 q^-3 - 0.1629 q^-4
%
%Estimated using AR ('yw'/'ppw') from data set x
%Loss function 3.08869e+008 and FPE 3.32402e+008
%Sampling interval: 1
compare(n,m,1);%向前预测一个时间单位的数据。
运行结束后显示图片:
http://www.ilovematlab.cn/images/default/attachimg.gif
对于图片的显示,Question4:只显示了101个时间单位,也就是没有显示出来预测的第102个数据,怎么才能让它显示出来?
还有就是上边两条曲线相差一个时间单位,Question5:怎么把结果的原数据和预测数据在相同的时间单位上显示出来?体现出二者的对比? 个人水平专业有限, 这应非编程问题, 同待高人路过
页:
[1]