永发信息网

matlab求二元线性回归

答案:2  悬赏:60  手机版
解决时间 2021-03-23 17:07
  • 提问者网友:謫仙
  • 2021-03-23 12:50
已知方程c=ax+by+z并测的x,y,z 各10组数据 求用matlab程序回归 求a,b,c

x=[1,2,3,4,5,6,7,8,9,10]
y=[1,2,3,4,5,6,7,8,9,10]
z=[1,2,3,4,5,6,7,8,9,10]
最佳答案
  • 五星知识达人网友:孤老序
  • 2021-03-23 14:17
x=[1,2,3,4,5,6,7,8,9,10]
y=[1,2,3,4,5,6,7,8,9,10]
z=[1,2,3,4,5,6,7,8,9,10]
Z=z';
X=[x;y]';
%c=ax+by+z z=c-ax-by
B=regress(Z,[ones(length(x),1) X])
c=B(1),a=-B(2),b=-B(3)

结果:
B =

0.0000
1.0000
0

c =

3.0337e-016

a =

-1

b =

0

提供的数据是假设的,不好。
全部回答
  • 1楼网友:时间的尘埃
  • 2021-03-23 14:30
可以不用拟合工具箱,直接用矩阵除法即可!因为为线性 求a1,a2即把a1,a2当成未知数,x1,x2,y-a0当成已知量 则x1*a1+x2*a2=y-a0,即[x1,x2]*[a1;a2]=y-a0 令矩阵a=[x1,x2]=[x1(0),x2(0); x1(1),x2(1); .......,.......... x1(10),x2(10)] b=y-a0=[y(0)-a0; y(1)-a0; ...........; y(10)-a0] 则[a1,a2]=a\b 即求出a,a2值,实质也是利用最小二乘法! 希望我的回答能帮助你!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯