matlab中regress函数教程,regress()函数

本文介绍了如何在Matlab中运用regress()函数进行多元线性回归分析,以湖水中COD浓度与湖区工业产值、总人口数、捕鱼量、降水量之间的关系为例。通过regress命令得到回归系数、R2、F统计量和P值,结果显示回归模型显著,R2高达0.9908。
摘要由CSDN通过智能技术生成

一、回归分析

1.多元线性回归

在Matlab统计工具箱中使用命令regress()实现多元线性回归,调用格式为

b=regress(y,x)

[b,bint,r,rint,statsl = regess(y,x,alpha)

其中因变量数据向量y和自变量数据矩阵x按以下排列方式输入对一元线性回归,取k=1即可。alpha为显著性水平(缺省时设定为0.05),输出向量b,bint为回归系数估计值和它们的置信区间,r,rint为残差及其置信区间,stats是用于检验回归模型的统计量,有三个数值,第一个是R2,其中R 是相关系数,第二个是F统计量值,第三个是与统计量F对应的概率P,当P

时拒绝H0,回归模型成立。

画出残差及其置信区间,用命令rcoplot(r,rint)实例1:已知某湖八年来湖水中COD浓度实测值(y)与影响因素湖区工业产值(x1)、总人口数(x2)、捕鱼量(x3)、降水量(x4)资料,建立污染物y的水质分析模

型。

(1)输入数据

x1=[1.376, 1.375, 1.387, 1.401, 1.412, 1.428, 1.445, 1.477]

x2=[0.450, 0.475, 0.485, 0.500, 0.535, 0.545, 0.550, 0.575]

x3=[2.170 ,2.554, 2.676, 2.713, 2.823, 3.088, 3.122, 3.262] x4=[0.8922, 1.1610 ,0.5346, 0.9589, 1.0239, 1.0499, 1.1065, 1.1387] y=[5.19, 5.30, 5.60,5.82,6.00, 6.06,6.45,6.95]

(2)保存数据(以数据文件.mat形式保存,便于以后调用)

save data x1 x2 x3 x4 y

load data (取出数据)

(3)执行回归命令

x =[ones(8,1),];

[b,bint,r,rint,stats] = regress

得结果:

b = (-16.5283,15.7206,2.0327,-0.2106,-0.1991)’

stats = (0.9908,80.9530,0.0022)

= -16.5283 + 15.7206xl + 2.0327x2 - 0.2106x3 + 0.1991x4

R2 = 0.9908,F = 80.9530,P = 0.0022

  • 8
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值