急!急!急!用matlab求线性回归

来源:百度知道 编辑:UC知道 时间:2024/06/07 21:01:13
已知y=a*x1+b*x2+c*x3+e
相关数据如下
y x1 x2 x3
7900.41 122389 4838.9 1806
9010.17 123626 5160.32 1997
12185.33 124761 5425.05 2063
14556.5 125786 5854.02 2053
18637.13 126743 6279.98 2112
22411.9 127627 6859.58 2170
26808.2 128453 7702.8 2250
33717.63 129227 8472.2 2357
怎么利用matlab求线性回归,得出a b c e
请给出具体代码谢谢!

楼上结果正确~!可以验证。

A=[122389,4838.9,1806;123626,5160.32,1997;124761,5425.05,2063;125786,5854.02,2053;126743,6279.98,2112;127627,6859.58,2170;128453,7702.8,2250;129227,8472.2,2357];
y=[7900.41;9010.17;12185.33;14556.5;18637.13;22411.9;26808.2;33717.63];
A=[A,ones(size(y))];
x=A\y
B=regress(y,A)
a=x(1); b=x(2); c=x(3); e=x(4);
yy=A*x;
plot(y,yy,'o',[min(y) max(y)],[min(y),max(y)])

结果:
x =

0.41922
6.7234
-3.298
-70291

B =

0.41922
6.7234
-3.298
-70291

A=[122389,4838.9,1806;123626,5160.32,1997;124761,5425.05,2063;125786,5854.02,2053;126743,6279.98,2112;127627,6859.58,2170;128453,7702.8,2250;129227,8472.2,2357];
y=[7900.41;9010.17;12185.33;14556.5;18637.13;22411.9;26808.2;33717.63];
A=[A,ones(size(y))];
x=A\y;

a=x(1);
b=x(2);
c=x(3);
e=x(4);