資源簡介
基于matlab灰色模型GM(1,1)預測數據,通過對已知數據進行處理,預測出新的數據,然后對比其結果,求出誤差,已經對結果進行后驗差檢驗,從而來判斷預測準確性。
代碼片段和文件信息
clear
syms?a?u;
c=[au]‘;%構成矩陣
A=[15?16.1?17.3?18.4?18.7?19.6?19.9?21.3?22.5];%輸入數據,可以修改
Ago=cumsum(A);%原始數據一次累加得到1-AGO序列xi(1)。
n=length(A);%原始數據個數
for?k=1:(n-1)
????Z(k)=(Ago(k)+Ago(k+1))/2;?%Z(i)為xi(1)的緊鄰均值生成序列
end
Yn?=A;%Yn為常數項向量
Yn(1)=[];?%從第二個數開始,即x(2)x(3)...
Yn=Yn‘;
E=[-Z;ones(1n-1)]‘;%累加生成數據做均值
c=(E‘*E)\(E‘*Yn);%利用公式求出a,u
c=?c‘;
a=c(1);%得到a的值
u=c(2);%得到u的值
F=[];
F(1)=A(1);
for?k=2:(n)
????F(k)=(A(1)-u/a)/exp(a*
評論
共有 條評論