X.w.j.拽. 发表于 2012-8-25 15:22

求帮忙,程序有什么错误呀

clc,clear
x1=;
n=length(x1);
nian=2005:2010;
plot(nian,x1,'o-');
x0=diff(x1);
x0=
for i=2:n
    z1(i)=0.5*(x1(i)+x1(i-1));
end
z1
B=[-z1(2:end)',z1(2:end)'.^2]
Y=x0(2:end)'
abhat=B\Y     % 估计参数 a,b的值
x=dsolve('Dx+a*x=b*x^2','x(0)=x0');  % 求解常微分方程
x=subs(x,{'a','b','x0'},{abhat(1),abhat(2),x1(1)});  % 代入参数值
yuce=subs(x,'t',0:14)   % 计算预测值
digits(6);
x=vpa(x) % 显示微分方程的解,
yuce(16)=yuce(15);
x1_all=;
epsilon=x1_all-yuce   % 计算残差
delta=abs(epsilon./x1_all)   % 计算相对误差
delta_mean=mean(delta)   %计算平均相对误差
x1_all_0=x1_all-x1_all(1);    % 数据列的始点零化像
yuce_0=yuce-yuce(1);    % 数据列的始点零化像
s0=abs(sum(x1_all_0(1:end-1))+0.5*x1_all_0(end));
s1=abs(sum(yuce_0(1:end-1))+0.5*yuce_0(end));
tt=yuce_0-x1_all_0;
s1_s0=abs(sum(tt(1:end-1))+0.5*tt(end));
absdegree=(1+s0+s1)/(1 +s0+s1+s1_s0)   %计算灰色绝对关联度
c=std(epsilon,1)/std(x1_all,1)   %计算标准差比值

老是出现错误??? Error using ==> minus
Matrix dimensions must agree.

hzs2012 发表于 2012-8-27 19:09

x1_all=;
epsilon=x1_all-yuce   % 计算残差

在x1_all-yuce出现错误,x1_all只有八个值,yuce有十六个值。再查查思路吧。

hzs2012 发表于 2012-8-27 19:10

x1_all=;  epsilon=x1_all-yuce   % 计算残差   在x1_all-yuce出现错误,x1_all只有八个值,yuce有十六个值。再查查思路吧。

hzs2012 发表于 2012-8-27 19:12

可否顺带说下这code干么的。。。

奋斗慰青春 发表于 2012-8-27 19:30

是啊  code是什么代码

X.w.j.拽. 发表于 2012-8-28 08:07

hzs2012 发表于 2012-8-27 19:12 static/image/common/back.gif
可否顺带说下这code干么的。。。

灰度预测代码

X.w.j.拽. 发表于 2012-8-28 08:07

奋斗慰青春 发表于 2012-8-27 19:30 static/image/common/back.gif
是啊  code是什么代码

灰度预测代码

hzs2012 发表于 2012-8-29 20:40

X.w.j.拽. 发表于 2012-8-28 08:07 static/image/common/back.gif
灰度预测代码

解决问题了么,可否分享?

X.w.j.拽. 发表于 2012-8-30 08:17

hzs2012 发表于 2012-8-29 20:40 static/image/common/back.gif
解决问题了么,可否分享?

算是解决了吧,我用了另一个程序,比上面的那个好用,可是好像上传不了附件
页: [1]
查看完整版本: 求帮忙,程序有什么错误呀