matlab解决灰色模型代码 有点错误 求教1.用MATLAB的灰色预测GM(1,1)模型程序如下%程序中的变量定义;alpha是包含 值的矩阵;ago是预测后累加值矩阵;var是预测值矩阵;error是残差矩阵;c是

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/29 19:04:21
matlab解决灰色模型代码 有点错误 求教1.用MATLAB的灰色预测GM(1,1)模型程序如下%程序中的变量定义;alpha是包含 值的矩阵;ago是预测后累加值矩阵;var是预测值矩阵;error是残差矩阵;c是

matlab解决灰色模型代码 有点错误 求教1.用MATLAB的灰色预测GM(1,1)模型程序如下%程序中的变量定义;alpha是包含 值的矩阵;ago是预测后累加值矩阵;var是预测值矩阵;error是残差矩阵;c是
matlab解决灰色模型代码 有点错误 求教
1.用MATLAB的灰色预测GM(1,1)模型
程序如下
%程序中的变量定义;alpha是包含 值的矩阵;ago是预测后累加值矩阵;var是预测值矩阵;error是残差矩阵;c是后验差比值
function gm1(x); %定义函数gm1(x)
clc %清屏,以使结果独立显示
format long; %设置计算精度
if length(x(:,1))==1 %对输入矩阵进行判断,如不是一维列矩阵,进行转置变换
x=x';
end
n=length(x); %取输入数据的样本量
z=0;
for i=1:n %计算累加值,并将值赋予矩阵be
z=z+x(i,:);
be(i,:)=z;
end
for i=2:n %对原始数列平行移位
y(i-1,:)=x(i,:);
end
for i=1:n-1 %计算数据矩阵B的第一列数据
c(i,:)=-0.5*(be(i,:)+be(i+1,:));
end
for j=1:n-1 %计算数据矩阵B的第二列数据
e(j,:)=1;
end
for i=1:n-1 %构造数据矩阵B
B(i,1)=c(i,:);
B(i,2)=e(i,:);
end
alpha=inv(B'*B)*B'*y; %计算参数 矩阵
for i=1:n+1 %计算数据估计值的累加数列,如改为n+1为n+m可预测后m-1个值
ago(i,:)=(x(1,:)-alpha(2,:)/alpha(1,:))*exp(-alpha(1,:)*(i-1))+alpha(2,:)/alpha(1,:);
end
var(1,:)=ago(1,:)
for i=1:n %如改n为n+m-1,可预测后m-1个值
var(i+1,:)=ago(i+1,:)-ago(i,:); %估计值的累加数列的还原,并计算出下一预测值
end
for i=1:n
error(i,:)=var(i,:)-x(i,:); %计算残差
end
c=std(error)/std(x); %调用统计工具箱的标准差函数计算后验差的比值c
ago %显示输出预测值的累加数列
alpha %显示输出参数 数列
var %显示输出预测值
error %显示输出误差
c %显示后验差的比值c
这代码怎么用?好像有点错

matlab解决灰色模型代码 有点错误 求教1.用MATLAB的灰色预测GM(1,1)模型程序如下%程序中的变量定义;alpha是包含 值的矩阵;ago是预测后累加值矩阵;var是预测值矩阵;error是残差矩阵;c是
楼主,我试了下,没错啊,这段代码你不能全部复制到matlab的命令窗口中去
首先,你得把矩阵X赋值,X不是你要处理的数据么?没有X程序运行不下去,
然后,将矩阵X赋值后你只需要复制下面这段代码就OK了
clc %清屏,以使结果独立显示
format long; %设置计算精度
if length(x(:,1))==1 %对输入矩阵进行判断,如不是一维列矩阵,进行转置变换
x=x';
end
n=length(x); %取输入数据的样本量
z=0;
for i=1:n %计算累加值,并将值赋予矩阵be
z=z+x(i,:);
be(i,:)=z;
end
for i=2:n %对原始数列平行移位
y(i-1,:)=x(i,:);
end
for i=1:n-1 %计算数据矩阵B的第一列数据
c(i,:)=-0.5*(be(i,:)+be(i+1,:));
end
for j=1:n-1 %计算数据矩阵B的第二列数据
e(j,:)=1;
end
for i=1:n-1 %构造数据矩阵B
B(i,1)=c(i,:);
B(i,2)=e(i,:);
end
alpha=inv(B'*B)*B'*y; %计算参数 矩阵
for i=1:n+1 %计算数据估计值的累加数列,如改为n+1为n+m可预测后m-1个值
ago(i,:)=(x(1,:)-alpha(2,:)/alpha(1,:))*exp(-alpha(1,:)*(i-1))+alpha(2,:)/alpha(1,:);
end
var(1,:)=ago(1,:)
for i=1:n %如改n为n+m-1,可预测后m-1个值
var(i+1,:)=ago(i+1,:)-ago(i,:); %估计值的累加数列的还原,并计算出下一预测值
end
for i=1:n
error(i,:)=var(i,:)-x(i,:); %计算残差
end
c=std(error)/std(x) %调用统计工具箱的标准差函数计算后验差的比值c
结果为c,照我说的做吧,肯定能出来,我在matlab7.0上跑的

matlab解决灰色模型代码 有点错误 求教1.用MATLAB的灰色预测GM(1,1)模型程序如下%程序中的变量定义;alpha是包含 值的矩阵;ago是预测后累加值矩阵;var是预测值矩阵;error是残差矩阵;c是 数学建模两个模型MATLAB代码,灰色模型和多元线性回归模型 要求代入数据能预测出后续十组数据! 数学建模MATLAB代码,灰色模型和一元线性回归模型 带入数据后预测后3个数据,并要求求残差我现在没分,求大虾们帮帮忙! 数学建模各种算法MATLAB的编程代码像排队论MATLAB的模拟程序、灰色模型的算法程序等!反正涉及数学建模需要编程的的程序代码尽可能多的给我!好的话在+100分, 灰色预测模型? 一元线性回归模型的拟合优度检验的matlab代码 一元线性回归模型的拟合优度检验的matlab代码 灰色- 马尔柯夫预测模型是什么 MATLAB求三次根号,怎么是错误的?下面代码画出来的X matlab求不定积分代码 Logistic模型用matlab求解t=[2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010]N=[128453 129227 129988 130756 131448 132129 132802 133450 134091]N0就取2000吧我实在不太会弄,请大神帮忙用lsqcurvefit解决,要有代码解释多谢 怎么建立matlab模型 matlab中如何解决整数规划问题关于供应链设施选址问题的《容量无限制成本固定模型》,如何用matlab解决 如何用灰色模型实现长期预测 用matlab解关于x的方程tan(tx)-2t/x=0.代码怎么写.每次都错误. 用matlab解方程求matlab代码. 请问谁有核聚类的matlab代码? sars的matlab拟合代码