matlab的简单移动平均法 下面的代码有什么问题啊,急求解答
1个回答

y=[533.8 574.6 606.9 649.8 705.1 772.0 816.4 892.7 963.9 1015.1 1102.7];

m=length(y);

n=[4,5]; %n 为移动平均的项数

for i=1:length(n)

%由于n 的取值不同,yhat 的长度不一致,下面使用了细胞数组

for j=1:m-n(i)+1

yhat{i}(j)=sum(y(j:j+n(i)-1))/n(i);

end

y12(i)=yhat{i}(end);

s(i)=sqrt(mean((y(n(i)+1:m)-yhat{i}(1:end-1)).^2));

end

y12,s

%%%%%%%%

y12 =

993.6000 958.1600

s =

150.5121 182.3851

%%%%%%%%%%%%%%运行没错啊!有结果啊!