声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 11351|回复: 15

[综合讨论] 如何用matlab进行AR模型预测数据

[复制链接]
发表于 2008-2-19 08:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
本人现在要用AR模型预测数据。现在有之前366天的数据。现在准备用230天的数据作为测试数据。剩下的136天数据用来检验预测的准确性。
本来只知道用Aryule(x,order)得到y。但是却不知道怎么用。刚才在论坛中搜索了一下才知道原来要用ar来建模进行预测。
可是具体应该如何应用还是有些不明白。希望大家可以帮我解释一下。
如果我想用230天的数据来预测后136天的数据。例如我要用4阶AR。x 是那230个数据.
是不是要先用aryule(x,4)求出Y. 然后 z = idpoly ([y],[])...这个是把多项式转换成模型? m = iddata([x],[])..这个iddata是干什么的阿?
然后是不是就用n = ar(x,4,'yw')就算把AR模型建好了?
然后要怎么进行预测呢?我搜索的是说用predict命令和compare命令。但是不知道怎么用..有人能指点一下么。

太感谢了

另外我一开始是用aryule(x,order)得到y。但是不知道应该如何才能求出自回归模式的系数。也就是y[n+1] = a0y[n]+a1y[n-1]+a2y[n-2]+.......apy[n-p] + Et 里面的a0,a1,a2.
只有这些数求出来了才能对数据进行据测啊。
谁能告诉我到底应该是怎么才能用那230个以前的数据预测那136个数据呢?

[ 本帖最后由 eight 于 2008-2-19 09:27 编辑 ]
回复
分享到:

使用道具 举报

发表于 2008-2-19 08:58 | 显示全部楼层
用aryule(x,4)求出的是预测系数a[a0,a1,a2,...ap],有了预测系数后就可以按模型做数据预测了,但要注意前向预测和后向预测,从楼主的介绍来看要做后向预测。

[ 本帖最后由 songzy41 于 2008-2-19 09:08 编辑 ]
 楼主| 发表于 2008-2-19 09:11 | 显示全部楼层
哦.那意思就是说我用aryule(x,4)求出来的Y就是[a0,a1...ap]?
例如我求出的y = 1.0000   -1.0011    0.0029   -0.0015    0.0041
我直接用y[n+1] = 1 - 1.0011y[n] + 0.0029y[n-1]-0.0015y[n-2]+0.0041y[n-3]
但是这样我得到的结果不对啊。差的很多阿。这是为什么啊?
假设n = 4. yn = 1.9666 yn-1 = 1.9676 yn-2 = 1.9666 yn-3 = 1.9595  yn+1 = 1.9666
发表于 2008-2-19 16:47 | 显示全部楼层
你是做前向预测,则计算方法如下图。不知楼主为什么取阶数为4阶,很低,是否数据非常平坦?
forwardpredict.jpg
 楼主| 发表于 2008-2-19 17:07 | 显示全部楼层
哦,我是想从4阶到10阶都试一下。然后选择效率最好的那个。
 楼主| 发表于 2008-2-19 17:26 | 显示全部楼层
另外还请问一下。每次我用y = aryule(x,n)之后总会得到n+1个Y值。
Y的第一个值都是1。这个1是不是没用阿?如果我用后面的n个数当成a0-an.
可以算出比较接近的答案。那这个1是不是就没用了?

不好意思,新人问题可能比较多
发表于 2008-2-19 17:56 | 显示全部楼层
这个1就在用在y(n)上,不是没有用。
 楼主| 发表于 2008-2-19 18:22 | 显示全部楼层
但是如果1用在y[n]上了。那最后还多出来一个数是干什么用的?
而且如果这样的话,那么用我上面给出的数据。预测结果会差很多的阿?
 楼主| 发表于 2008-2-19 18:50 | 显示全部楼层
哦。刚才又搜索了一番有了进一步的了解。
是不是表达式应该是y[n] = a1y[n-1] + a2y[n-2] + .....+ap[yn-p]
这样的话那个1就是y[n]的系数。然后后面的就等于a1,a2,...ap了?
太感谢songzy41兄弟了....感激不尽阿...:victory:
发表于 2008-2-19 19:15 | 显示全部楼层
还得注意有个负号:
y[n] = -{a1y[n-1] + a2y[n-2] + .....+apy[n-p]}

评分

1

查看全部评分

发表于 2008-11-17 07:11 | 显示全部楼层
怎么还是没有说怎么用compare 和predict 进行ARmodel的 预测啊  有人能说一下吗?
发表于 2008-11-24 23:33 | 显示全部楼层
原來如此 要加上負號啊 
发表于 2009-2-13 10:49 | 显示全部楼层

能否把程序贴出来或者发份到邮箱里看看

能否把程序贴出来或者发份到邮箱里看看?:lol :handshake
发表于 2009-2-25 15:10 | 显示全部楼层
不错,,,
发表于 2009-3-3 21:46 | 显示全部楼层
高手!你的这个公式我查了好多书都没见到,我见到的公式都是X(n)=a(1)*X(n-1)+a(2)*X(n-2)+a(3)*X(n-3)+a(4)*X(n-4)
这一类型的!希望你能给说明一下!好使我豁然开朗
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-11-26 09:57 , Processed in 0.071095 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表