网站首页 > 技术教程 正文
回归分析是研究一个随机变量与一个或多个普通变量之间的相关系的统计方法。如果做回归分析,有很多软件都已经封装好了的,我们只需直接调用就可以了。例如Matlab中的regress()就是做线性回归分析的函数之一。
regress多元线性回归的基础语法
b = regress(y,X)
[b,bint] = regress(y,X)
[b,bint,r] = regress(y,X)
[b,bint,r,rint] = regress(y,X)
[b,bint,r,rint,stats] = regress(y,X)
[___] = regress(y,X,alpha)
说明
b = regress(y,X) 返回向量 b,其中包含向量 y 中的响应对矩阵 X 中的预测变量的多元线性回归的系数
估计值。要计算具有常数项(截距)的模型的系数估计值,请在矩阵 X 中包含一个由 1 构成的列。
[b,bint] = regress(y,X) 还返回系数估计值的 95% 置信区间的矩阵 bint。
[b,bint,r] = regress(y,X) 还返回由残差组成的向量 r。
[b,bint,r,rint] = regress(y,X) 还返回矩阵 rint,其中包含可用于诊断离群值的区间。
[b,bint,r,rint,stats] = regress(y,X) 还返回向量 stats,其中包含 R2 统计量、F 统计量及其 p 值,
以及误差方差的估计值。矩阵 X 必须包含一个由 1 组成的列,以便软件正确计算模型统计量。
[___] = regress(y,X,alpha) 使用 100*(1-alpha)% 置信水平来计算 bint 和 rint。您可以指定上述任一
语法中的输出参数组合。
说明:b是线性方程的系数估计值,并且第一值表示常数,第二个值表示回归系数。
bint是系数估计值的置信度为95%的置信区间,r表示残差,rint表示各残差的置信区间,
stats是用于检验回归模型的统计量,有三个数值其中有表示回归的R2统计量和F以及显著性概率P值,
alpha为置信度。相关系数r^2越大,说明回归方程越显著;与F对应的概率P<alpha时候拒绝H0,
回归模型成立。
实例1
例子:目标函数:y=Ax1^2+Bx2^2+Cx1+Dx2+Ex1*x2+F (这是一个二次函数,两个变量,大写的字母是常数)
程序
%导入数据
clc;
clear all;
close all;
y=[7613.51 7850.91 8381.86 9142.81 10813.6 8631.43 8124.94 9429.79 10230.81 ...
10163.61 9737.56 8561.06 7781.82 7110.97]';
x1=[7666 7704 8148 8571 8679 7704 6471 5870 5289 3815 3335 2927 2758 2591]';
x2=[16.22 16.85 17.93 17.28 17.23 17 19 18.22 16.3 13.37 11.62 10.36 9.83 9.25]';
X=[ones(size(y)), x1.^2,x2.^2, x1, x2, x1.*x2];
%开始分析
[b,bint,r,rint,stats] = regress(y,X)
%b储存的是系数
%bint储存的是系数的区间值,我们叫做置信区间,就是说是系数可能存在的范围,区间范围越小越好
%r是误差,也叫残差,rint是误差的区间
%stats分别对应4个检验,R?检验值、F检验值、p、绝对误差的方差s?
%R?越接近1说明拟合程度越好,F这个要查表,p这个一般小于0.05就可以了,s?越小越好
%F小于标准值说明拟合结果和原数据相差不大,可接受
plot3(x1,x2,y,'rp')%原始数据的散点图
title('原始数据的散点图');
rcoplot(r,rint);%作残差分析图
title('残差图的绘制');
xlabel('数据');
ylabel('残差');
z = b(1)+b(2).*x1.^2+b(3).*x2.^2+b(4).*x1+b(5).*x2+b(6).*x1.*x2;%回归模型
figure;
plot3(x1,x2,y,'rp');
hold on;
plot3(x1,x2,z,'b');%散点图及回归线
title('散点图及回归线');
运行结果
b =
1.0e+04 *
-1.3539
0.0000
-0.0058
-0.0006
0.4800
-0.0000
bint =
1.0e+04 *
-2.6219 -0.0859
0.0000 0.0000
-0.0276 0.0160
-0.0013 0.0001
0.1196 0.8404
-0.0001 0.0000
r =
-439.7667
-236.1417
-143.4644
-590.4204
751.1702
557.0807
-244.7861
49.4622
637.6996
-678.9521
274.4335
157.8124
-80.3534
-13.7737
rint =
1.0e+03 *
-1.2196 0.3401
-1.4263 0.9540
-0.9191 0.6322
-1.5688 0.3879
0.1114 1.3909
-0.5330 1.6472
-1.1689 0.6793
-0.9775 1.0765
-0.3985 1.6739
-1.4390 0.0811
-0.9192 1.4680
-1.0888 1.4044
-1.2712 1.1105
-1.0174 0.9898
stats =
1.0e+05 *
0.0000 0.0001 0.0000 3.1622
实例2
加载 carsmall 数据集。确定权重和马力作为预测变量,里程作为响应。
程序
clc;
clear all;
close all;
% 加载 carsmall 数据集。确定权重和马力作为预测变量,里程作为响应。
load carsmall
x1 = Weight;
x2 = Horsepower; % Contains NaN data
y = MPG;
X = [ones(size(x1)) x1 x2 x1.*x2];
b = regress(y,X) % Removes NaN data
scatter3(x1,x2,y,'filled')
hold on
x1fit = min(x1):100:max(x1);
x2fit = min(x2):10:max(x2);
[X1FIT,X2FIT] = meshgrid(x1fit,x2fit);
YFIT = b(1) + b(2)*X1FIT + b(3)*X2FIT + b(4)*X1FIT.*X2FIT;
mesh(X1FIT,X2FIT,YFIT)
xlabel('Weight')
ylabel('Horsepower')
zlabel('MPG')
view(50,10)
hold off
运行结果
b =
60.7104
-0.0102
-0.1882
0.0000
本文内容来源于网络,仅供参考学习,如内容、图片有任何版权问题,请联系处理,24小时内删除。
猜你喜欢
- 2025-01-08 从头开始简单理解线性回归(附Python 实现)
- 2025-01-08 多元线性回归怎么做预测,excel预测产量计算教程
- 2025-01-08 基于RK3568国产处理器教学实验箱操作案例分享:一元线性回归实验
- 2025-01-08 【干货】如何最简单、通俗地理解线性回归算法?
- 2025-01-08 python机器学习:多元线性回归模型实战
- 2025-01-08 监督学习常见的一种回归算法:多元线性回归
- 2025-01-08 回归分析:线性回归、损失函数、多元线性回归及其评价指标
- 2025-01-08 R语言实战-02-多元线性回归诊断
- 2025-01-08 Matlab一秒搞定多元线性回归,包括方程,r值,因素主次
- 2025-01-08 回归系列(四)| 一个完整的线性回归是怎样做的?
你 发表评论:
欢迎- 01-09单因素方差分析+作图
- 01-09描述性统计分析 之 均值分析
- 01-0986:重复性和再现性分析GRR(2)-GRR均值极差分析法和方差分析法
- 01-09SPC如何做方差分析,意义又在哪里?
- 01-09MedSPSS小课堂——多因素方差分析
- 01-09MedSPSS小课堂——双因素方差分析
- 01-09SPSS单因素方差分析的操作步骤及结果解读,陈老师SPSS数据分析
- 01-0914单因素方差分析:One-Way ANOVA
- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)