%% 导入数据
clc, clear all, close all
s = dataset('xlsfile', 'SampleA1.xlsx');
%% 多元线性回归
myFit = LinearModel.fit(s);
disp(myFit)
sx=s(:,1:10);
sy=s(:,11);
n=1:size(s,1);
sy1= predict(myFit,sx);
figure
plot(n,sy, 'ob', n, sy1,'*r')
xlabel('样本编号', 'fontsize',12)
ylabel('综合得分', 'fontsize',12)
title('多元线性回归模型', 'fontsize',12)
set(gca, 'linewidth',2)
%% 逐步回归
myFit2 = LinearModel.stepwise(s);
disp(myFit2)
sy2= predict(myFit2,sx);
figure
plot(n,sy, 'ob', n, sy2,'*r')
xlabel('样本编号', 'fontsize',12)
ylabel('综合得分', 'fontsize',12)
title('逐步回归模型', 'fontsize',12)
set(gca, 'linewidth',2)
线性回归模型:
eva ~ 1 + dv1 + dv2 + dv3 + dv4 + dv5 + dv6 + dv7 + dv8 + dv9 + dv10
估计系数:
Estimate SE tStat pValue
__________ __________ ________ ___________
(Intercept) 0.13242 0.035478 3.7324 0.00019329
dv1 -0.092989 0.0039402 -23.6 7.1553e-113
dv2 0.0013282 0.0010889 1.2198 0.22264
dv3 6.4786e-05 0.00020447 0.31685 0.75138
dv4 -0.16674 0.06487 -2.5703 0.01021
dv5 -0.18008 0.022895 -7.8656 5.1261e-15
dv6 -0.50725 0.043686 -11.611 1.6693e-30
dv7 -3.1872 1.1358 -2.8062 0.0050462
dv8 0.033315 0.084957 0.39214 0.69498
dv9 -0.028369 0.093847 -0.30229 0.76245
dv10 -0.13413 0.010884 -12.324 4.6577e-34
观测值数目: 2937,误差自由度: 2926
均方根误差: 0.348
R 方: 0.819,调整 R 方 0.818
F 统计量(常量模型): 1.32e+03,p 值 = 0
1。正在添加 dv1, FStat = 9588.9218, pValue = 0
2。正在添加 dv6, FStat = 457.4039, pValue = 1.99293e-94
3。正在添加 dv10, FStat = 262.2799, pValue = 1.446486e-56
4。正在添加 dv1:dv10, FStat = 73.1017, pValue = 1.95152e-17
5。正在添加 dv5, FStat = 35.5913, pValue = 2.7252e-09
6。正在添加 dv5:dv10, FStat = 16.9034, pValue = 4.04112e-05
7。正在添加 dv1:dv6, FStat = 13.1002, pValue = 0.000300265
8。正在添加 dv7, FStat = 9.6632, pValue = 0.001898
9。正在添加 dv1:dv5, FStat = 5.0866, pValue = 0.024185
10。正在添加 dv6:dv10, FStat = 4.6719, pValue = 0.030741
11。正在删除 dv1:dv6, FStat = 0.11125, pValue = 0.73875
线性回归模型:
eva ~ 1 + dv7 + dv1*dv5 + dv1*dv10 + dv5*dv10 + dv6*dv10
估计系数:
Estimate SE tStat pValue
_________ _________ _______ ___________
(Intercept) 0.032319 0.01043 3.0987 0.0019621
dv1 -0.099059 0.0037661 -26.303 4.6946e-137
dv5 -0.11262 0.023316 -4.8301 1.4345e-06
dv6 -0.56329 0.037063 -15.198 2.864e-50
dv7 -3.2959 1.0714 -3.0763 0.0021155
dv10 -0.14693 0.010955 -13.412 7.5612e-40
dv1:dv5 0.018691 0.0053933 3.4656 0.00053673
dv1:dv10 0.010822 0.0019104 5.665 1.6127e-08
dv5:dv10 -0.1332 0.021543 -6.183 7.1632e-10
dv6:dv10 0.10062 0.027651 3.639 0.00027845
观测值数目: 2937,误差自由度: 2927
均方根误差: 0.344
R 方: 0.824,调整 R 方 0.823
F 统计量(常量模型): 1.52e+03,p 值 = 0
开发工具:MATLAB 2022b
微信截屏工具Alt+A