注册 登录
编程论坛 Matlab

求助多元线性回归

jianjian0409 发布于 2008-10-08 20:45, 2348 次点击
a=[1.56E+05 1.55E+05 1.56E+05 1.57E+05 1.36E+05 1.36E+05 1.37E+05 1.33E+05 1.17E+05 1.15E+05 1.17E+05 1.15E+05 98340 99791 9.79E+04 97969];
b=[35 35 35 35 35 40 40 40 40 40 45 45 45 45 45 50 50 50 50 50 ];
c=[8 10 12 18 8 10 12 18 8 10 12 18 8 10 12 18 ];
d=[825 425 260 170 260 140 825 425 170 260 425 825 425 825 260 170];
e=[0.0123 0.0293 0.0241 0.0182 0.0182 0.0241 0.0293 0.0123 0.0293 0.0123 0.0182 0.0241 0.0241 0.0182 0.0123 0.0293];
模型:lna=Alnb+Blnc+Clnd+Dlne求解A B C D.
并做出响应线性回归曲线。

感谢!
6 回复
#2
hitzhang2008-10-08 21:56
>> a=[1.56E+05 1.55E+05 1.56E+05 1.57E+05 1.36E+05 1.36E+05 1.37E+05 1.33E+05 1.17E+05 1.15E+05 1.17E+05 1.15E+05 98340 99791 9.79E+04 97969];
b=[35 35 35 35 35 40 40 40 40 40 45 45 45 45 45 50 50 50 50 50 ];
c=[8 10 12 18 8 10 12 18 8 10 12 18 8 10 12 18 ];
d=[825 425 260 170 260 140 825 425 170 260 425 825 425 825 260 170];
e=[0.0123 0.0293 0.0241 0.0182 0.0182 0.0241 0.0293 0.0123 0.0293 0.0123 0.0182 0.0241 0.0241 0.0182 0.0123 0.0293];
>> a=log(a);b=log(b);c=log(c);d=log(d);e=log(e);
>> X=[b' c' d' e']\a'
??? Error using ==> horzcat
CAT arguments dimensions are not consistent.

>> b=b(1:16);
>> X=[b' c' d' e']\a'

X =

    2.3344
    0.1044
    0.1356
   -0.5210

>> 你的b数据多了,不知道咋回事。X=[A B C D]
#3
jianjian04092008-10-09 08:36
是我写错了,b应该是
b=[35 35 35 35 40 40 40 40 45 45 45 45 50 50 50 50 ];可是程序还是出错,
还请hitzhang兄指点
#4
jianjian04092008-10-09 08:43
感谢hitzhang兄,结果已经做出来了,非常感谢!
#5
jianjian04092008-11-01 16:20
还想再请教下数据还是上面的数据,如果想拟合成
模型:lna=Alnb+Blnc+Clnd+Dlne+E形式
求解A B C D E.
该怎样做呢?
并做出响应线性回归曲线。
#6
hitzhang2008-11-01 18:21
>> a=[1.56E+05 1.55E+05 1.56E+05 1.57E+05 1.36E+05 1.36E+05 1.37E+05 1.33E+05 1.17E+05 1.15E+05 1.17E+05 1.15E+05 98340 99791 9.79E+04 97969];
b=[35 35 35 35 40 40 40 40 45 45 45 45 50 50 50 50 ];
c=[8 10 12 18 8 10 12 18 8 10 12 18 8 10 12 18 ];
d=[825 425 260 170 260 140 825 425 170 260 425 825 425 825 260 170];
e=[0.0123 0.0293 0.0241 0.0182 0.0182 0.0241 0.0293 0.0123 0.0293 0.0123 0.0182 0.0241 0.0241 0.0182 0.0123 0.0293];
>> a=log(a);b=log(b);c=log(c);d=log(d);e=log(e);
>> X=[b' c' d' e' ones(16,1)]\a'

X =

   -1.2863
   -0.0108
    0.0002
    0.0089
   16.6044

>>
#7
jianjian04092008-11-03 13:59
感谢hitzhang的无私帮助
1