南京朗诗地产公司:如何用matlab编程实现滚动预测?

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 20:05:29
即输入x=[3 2 1 3 2],调用一个函数,得到n个预测值,把预测值的第一个数给x数列,同时去掉x的第一个值,即x变为[2 1 3 2 预测值的第一个],然后再调用这个函数,得到n-1个预测值,把n-1预测值的第一个数给x数列,同时去掉x的第一个值,依此类推,直到n=1时结束.谢谢各位了,本人毕业设计急用.

注意,我觉得你的问题不是滚动预测,而是不断的把数据的首部分扔掉,而滚动的意思是循环移动。
但不影响解决问题,假设你的被调用的函数是求均值mean函数,代码如下。

x=[3 2 1 3 2]
result = [];

for i=1:length(x)

%调用函数
temp=mean(x);

%将函数返回值放到result中
result=[result temp(1)]

%将x的第一个数扔掉。
x(1)=[];

end

运行结果,把每次循环中的result都显示出来了

result =

2.2000

result =

2.2000 2.0000

result =

2.2000 2.0000 2.0000

result =

2.2000 2.0000 2.0000 2.5000

result =

2.2000 2.0000 2.0000 2.5000 2.0000