matlab 机器学习 多元线性回归

X1 X2 X3 y
0.781 1420 1 833
1.56 1690 2 832
2.34 2190 3 831
3.13 1960 4 830
3.91 1550 5 829
数据如上
Y=b(1)+b(2)*x1+b(2)*x2+b(3)*x3
求参数b
首先载入数据

x=xlsread(‘tt.xlsx’,’A1:A5’);
y=xlsread(‘tt.xlsx’,’B1:B5’);
x1=xlsread(‘tt.xlsx’,’C1:C5’);
其次生成新的算术矩阵(自己取得名字)
注意:
若读取的数据是行向量,则
X=[ones(length(Y),1),x1,x2,x3]
如果是列向量
X=[ones(length(Y’),1),x1,x2,x3]

[b,bint,r,rint,stats] = regress(Y,X)
得出结果如下
b =
834.0000
0.0000
-0.0000
-1.0000
bint =
834.0000 834.0000
-0.0000 0.0000
-0.0000 0.0000
-1.0000 -1.0000
r =
1.0e-12 *
-0.4547
-0.1137
0.2274
0
-0.2274
rint =
1.0e-11 *
-0.3630 0.2721
-0.5725 0.5498
-0.2526 0.2981
-0.1375 0.1375
-0.1285 0.0830
stats =
1.0e+25 *
0.0000 1.0316 0.0000 0.0000

则有y=834+0*x1+0*x2-1*x3

猜你喜欢

转载自blog.csdn.net/qq_40168296/article/details/82620136