matlab 非线性回归

来源:百度知道 编辑:UC知道 时间:2024/05/11 01:39:13
function yhat=huaxue1(beta,x)
b1=beta(1);
b2=beta(2);
b3=beta(3);
b4=beta(4);
b5=beta(5);
x1=x(:,1);
x2=x(:,2);
x3=x(:,3);
yhat=(b1*x2-x3/b5)./(1+b2*x1+b3*x2+b4*x3);
以上是一个M文件,是关于非线性回归的,运行怎么出错?请问大家错在什么地方了?

yhat=(beta(1)*x(:,2)-x(:,3)/beta(5))./(1+beta(2)*x(:,1)+beta(3)*x(:,2)+beta(4)*x(:,3));
这样就可以的,通过

运行没有问题的,答案是0.0667
先 RUN(F5) 运行,提示出错是因为没有给beta和x赋值,

赋值以后,运行huaxue1(beta,x)即可

程序没有问题,把以上程序存为huaxue1.m

>> beta=1:5

beta =

1 2 3 4 5

>> x=magic(3)

x =

8 1 6
3 5 7
4 9 2

>> huaxue1(beta,x)

ans =

-0.0045
0.0720
0.1955