x=[3.9,5.3,7.2,9.6,12.9,17.1,23.2,31.4,38.6,50.2,62.9,76.0,92.0,106.5,123.2,131.7,150.7,179.3,204.0,226.5,251.4,281.4];n=12;xx=x(1:n);t=[ones(n,1),(1:n)'];%建立n行二列的矩阵t,第二列为1,,...ny=log(xx(1:n));[b,bint,r,rint,stats]=regress(y,t);RR=stats(1);F=stats(2);prob=stats(3);x0=exp(b(1));r=b(2);py=x0*exp(r*t(:,2));err=xx-py;rmse=sqrt(sum(err.^2)/n);plot(1:n,xx,'*',1:n,py);第六行,错误在哪里呢?
通过调试的程序主要存在的问题是:y、t向量(行、列不一致),xx、py向量(行、列不一致)。是
错误语句:[b,bint,r,rint,stats]=regress(y,t);正确语句:[b,bint,r,rint,stats]=regress(y',t)
错误语句:err=xx-py;正确语句:err=xx-py';
更改后,得到