如何用matlab拟和y=ax1+bx2

来源:百度知道 编辑:UC知道 时间:2024/06/17 03:31:04
如何用matlab拟和y=ax1+bx2
其中x1、x2为2个变量,看了matlab拟合的一些问题,发现都是只有一个变量。请高手指教

H=[];
for i=1:N%N为数据长度
H=[H;x1(i),x2(i)];
end
[a;b]=inv(H'*H)*H'*y;%如果报错就把y改为y'

用regress就行了,可以是多元的

H=[];
for i=1:N%N为数据长度
H=[H;x1(i),x2(i)];
end
[a;b]=inv(H'*H)*H'*y;%如果报错就把y改为y'
----不是所有的方阵都有逆的 inv不一定好使 这就是最小二乘拟合问题

将a b写成一个变量 c(1)=a;c(2)=b;再用inline命令把y的格式写出来 用lsqcurvefit就可以了 还不会的话help一下

最小二乘法就可以了啊!

使用 符号功能