基于MATLAB的多元非线性回归模型

基于MATLAB的多元非线性回归模型
基于MATLAB的多元非线性回归模型

第29卷第2期2009年3月

云南师范大学学报

JournalofYunnanNormalUniversity

V01.29No.2

Mar.2009基于MATLAB的多元非线性回归模型‘

董大校

(临沧师范高等专科学校,云南临沧6770000)

摘要:MATLAB是源于矩阵运算的一种高度集成的计算机语言。它提供了强大的科学运算、灵活的

程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。文章充分利用

MATLAB统计工具箱的优势,通过程序的实现,对多元非线性回归模型的未知参数的估计方法以及对估

计后的模型预报做出研究,并以实例验证了该方法的有效性。

关键词:MATLAB;多元非线性回归;td,--乘法;统计工具箱

中图分类号:TP301文献标识码:A文章编号:1007—9793(2009)02—0045—04

l预备知识

非线性回归最小二乘法拟合的基本原理…。

对给定数据(菇i,Y;)(i=0,l,…,rrt),在取定的函数类西中,求p(x)∈痧,使误差t=p(x)一Y。(i=0,1,…,m)的平方和最小,即

∑#=∑[p(戈i)一,,i]2

最小,从几何意义上讲,就是寻求与给定点(菇i,Y;)(i=0,1,…,rn)的距离平方和为最小的曲线Y=p(菇)(图1)。函数p(x)称为拟合函数或最小二乘解,求拟合函数p(x)的方法称为曲线拟合的最小二乘法。

2MATLAB非线性曲线拟合命令介绍

2.1nHnfit函数旧1

用nlinfit函数进行非线性最小二乘数据拟合。该函数使用高斯一牛顿算法,调用格式如下:

Qbeta=nlinfit(X,Y,fun,beta0)用最小二乘法估计非线性函数系数。Y为响应值(因变量)矢量。一般地,为自变量值组成的设计矩阵,每一行对应与Y中的一发个值。但是,x可以是fun参数能接受的任何数组。fun参数为一函数,该函数具有下面的形式

yhat=myfun(beta。X)

其中beta为系数矢量,x为设计矩阵。fun为参数返回一个拟合Y值的yhat矢量。betaO为包含系数初始值的矢量。

●[beta,r,J]=nlinfit(X,Y,fun,beta0)返回拟合系数(beta)、残差(r)、和雅可比矩阵J,这些参数可以用于nlintool函数,生成预测值的误差估计;或用于nlparci函数生成系数的误差估计。

2.2nlintool函数

使用nlintool函数可以对数据进行非线性方程拟合并交互图形显示,其调用格式如下:

?收稿日期:2008—10-23

作者简介:董大校(1965一),男,云南省临沧市人,副教授,主要从事数学教学科研工作.

?46?云南师范大学学报(自然科学版)第29卷

●nlinfit(x,y,fun,beta())为一预测图,它提供数据(x,y)的非线性曲线拟合。它用两条红色曲线来表示预测值的95%置信区间。be啪为一矢量,包含参数的初值。fun参数为一函数,该函数具有yhat=myfun(beta,X)的形式:

其中beta为系数矢量,x为设计矩阵。

nlintool函数显示一个图形“矢量”,其中的每个图形对应于输入矩阵X的每一列。响应变量Y为一列矢量,与x的行数相匹配。

●nlintool(x,Y,FUN,beta0,alpha)用图形表示预测值的100(1一alpha)%置信区间。当x为矩阵时,将为每一列单独生成图形,应变量Y为一列变量,对应于X的行。alpha()的默认值为0.05生成95%置信区间。

2.3nlpredci函数

可利用nlpredci函数计算非线性模型预测值的置信区间,其调用格式如下:

●ypred=nlpredci(FUN,inputs,beta,r,J)给定拟合参数(beta)、残差(r)和和雅可比矩阵(J),返回预测响应。输入是非线性函数中独立变量的数值矩阵。

2.4nlparci函数

可利用nlparci函数计算非线性模型中参数估计值的置信区间。

●nlparci(beta,r,J)给定拟合参数(beta)、残差(r)、和解处的雅可比矩阵(J),返回非线性最小二乘参数估计(beta)的95%置信区间ci。nlparci函数使用nlinfit函数的输出作为输入。

2.5regress函数

用regress函数进行多元线性回归。

●[b,bint,r,tint,stats]=regress(y,x,alpha)给出bint和tint的100(1一alpha)%置信区间。2.6stepwise函数

用stepwise函数进行逐步回归,它使用交互环境进行分析。其调用格式如下:

●stepwise(x,Y,inmodel,penter,premove)指定模型的初始状态和要使用的置信区间。inmodel为长度为x中列数的逻辑矢量。inmodel指定包含在初始模型中的自变量。默认时不包含x中的列。pen—ter指定引入自变量的最大P值,默认时为0.05。premove指定剔除自变量的最小P值,默认时为0.10。

3实例验证

3.1反应动力学模型

反应动力学中的Hougen—Watson模型是非线性模型的一个典型例子。其模型如下:

口l?菇2一X3佃5

rate2—瓦了■啄-_i而

其中:卢。,届:,…,风为未知参数,石。,算:和戈,为三个输入变量。三个输入为氢(hydrogen)、n一戊烷(n—pentane)、异戊烷(isopentane)。上述模型显然为多元非线性模型。文件reaction.mat包含了反应的仿真数据。

通过计算可知,反应动力学Hougen—Watson模型中的5个未知参数为

卢l=1.2526,/32=0.0628,岛=0.04,/34=0.1124,岛=1.1914最终模型为:mte=ri矿丽西1.2_5i26了‘百x2面-Fx/i1—.1_石911:4瓦ri

3.2财政收入预测[31

财政收入与国民收入、工农业总产值、人12、就业人12、固定资产投资等因素有关。采用逐步回归分析构造预测模型。以财政收入作为因变量Y,自变量为国民收入(鼻。)、工业总产值(茹:)、农业总产值

第2期董大校,等:基于IVIATLAB的多元非线性回归模型?47?(髫,)、总人1:3(茗。)、就业人口(%)、固定资产投资(‰)。其样本数n=30,自变量数P=6。

首先编写非线性函数的M函数文件model.m代码。然后在命令窗El输入由石,、如、奶、扎、≈样本数据构成的矩阵戈和财政收入样本数据Y,取betaO=[0.50—0.03—0.600.Ol一0.020.35];用交互式

非线性拟合图形工具来显示,在MATLAB命令窗口中输入如下命令:

nlintool(X,Y,,model.betaO,0.01);得到nlint001分析窗口。

由此得到财政收入与各因素之间关系的回归模型l为:

y=0.5245xl一0.0293x2—0.631x3+0.0113x4—0.0231x5+0.3652x6(1)对该模型进行多元线性回归检验,输入命令:>>[b,bint,r,tint,stats]=regress(y,x)

stats=0.9805301.03050951.5530

结果分析:bint为各系数的置信区间。stats矢量是值分别为相关系数的平方、F值和显著性概率P。相关系数平方值R2=0.9805,说明模型拟合程度较高。显著性概率P=0,小于0.05,故拒绝零假设,认为模型1中至少有一个自变量的系数不为零,因而从总体上模型1是有意义Et的。

结果b给出了回归系数的估计值,检查它们的置信区间发现,恐系数的置信区间包含了零点,表明回归变量菇:对变量y的影响不是太显著,因此从模型中移出次变量,对该模型进行逐步回归检验,在

MATLAB命令窗口输入并运行命令:>>stepwise(x,Y)

除了算。,省,,石。外,其他自变量的回归系数置信区间都包含零点,保留z,,戈,,石。,将其他变量移出回归模型,R—square=0.979645,是指因变量的97.96%可由模型确定,F=417.104远远超过了F检验的

临界值,P=0远小于显著性水平,这些说明用包含茗。,茗,,茁。的线性模型来描述,,是合适的。茗。的回归系

数为0.382869,菇3的回归系数为一0.496975,‰的回归系数为0.408624,常数项由Intercep给出,即b=177.07,利用逐步回归得到的回归模型2为:

y=0.382869x1—0.496875x3+0.408624x6+177.07(2)由于石,,戈,,x。对y具有较明显的显著性,用更为精确的拟合曲线来拟合表示茗。,茗,,‰和y的关系。做戈。,舅3,戈6分别对y的散点图,具体步骤在blATLAB命令窗口输入命令:

>>xl=x(:,1);x3=x(:,3);x6=x(:,6);>>subplot(1,3,1);plot(xl,Y,7+’;>>subplot【1,3,2);plot(x3,Y,7+,;>>subplot(1,3,3);plot(x6,Y,7+’

再做经变换后的散点图,对比其线性效果较好的,得出如下拟合曲线:

Y=一71.391+0.473xl;),=1620.46—6.509x3+0.Olx;;y=141.921+1.158x6;

在MAnAB命令窗口输入如下命令:

>>subplot(1,3,1);>>plot(xl,一71.391+0.473宰xl,’+,;

>>subplot(1,3,2);>>plot(X3,1620.46—6.509宰X3+0.01木x3.2,7+’

>>subplot(1,3,3);>>plot(x6,141.921+1.158木x6,’+’

对应的R—Square分别为0.951,0.887,0.944。从相关系数的值可以看出,对应的拟合方程的拟合程度较高。所以,用拟合后的曲线来代替原来的髫,,%,‰,得到如下回归模型3:

y=0.181l菇l+3.2342x3—0.005x;+0。4732x6—597.4372(3)作为对比,在引入交互项,在MATLAB命令窗口输入下面命令:

>>xl=x(:,1);x2=x(:,2);x3=x(:,3);x7=x1.宰x2;x8=x1.搴x3;>>xu---[xx7x8];>>stepwise(X,y)

加入交互项后,利用逐步回归分析,从运算结果可得R—Square=0.98665,F=461.923,RMSE=

27.9283,P=0.0000。各项参数值较模型(2)、(3)更好,所以,建立模型(4)

,,=0.845361xl一0.0120252x5+0.0000045x7—0..00057xB

即:Y=0.845361xI一0.0120252x5+0.0000045x1菇2—0.00057xl菇3(4)

从各统计量的数值看,模型(2)比模型(1)差一点,但模型(2)比模型(1)更为简单,模型(3)较模型

?48?云南师范大学学报(自然科学版)第29卷(1)、(2)虽然是非线性的回归模型,但实际上它的拟合效果并不好。模型(4)是在加入交互项后建立的,其系数中有的较小,几乎为零,代人数据进行预测,其效果不是很好。综合上述情形,建立的线性回归模型(2)更能真实的反映各自变量与因变量之间的关系。

4结语

本文从两方面人手,介绍了基于MATLAB的多元非线性回归模型参数的求解方法,同时也尝试了通过实验建立多元非线性回归模型的方法,虽然对于3.2财政收入预测模型并没有表现的像多元线性回归模型那样优秀,但是可以提供一种思想与方法,在以后的学习与实践中来完善这种思想与方法。

参考文献:

[1]袁建问.经济计量学实验[M].北京:科学出版社,2002.87—89.

[2]苏金明,阮沈勇,王永利.MATLAB工程数学[M].北京:电子工业出版社,2005.50—83

TheMultivariateNonlinearRegressionModelBasedonMATLAB

DONGDa—xiao

(LinCangTeachers’Colege)

Abstract:MATLABistheoriginofthematrixoperationsinahighlyintegratedcomputerlanguage.Itprovidedapowerfulscien—tificcomputing,flexibleprogramdesignprocess,high—qualitygraphicsandvisualinterfacedesignandconvenientproceduresandlanguageandotherinterfacefeatures.Inthispaper,wetakefulladvantageofMATLABstatistictoolboxtoachievethemulti-variatenonlinearregressionmodel.Estimateoftheunknownparameters.examplesareusedtovalidatethemethodiseffective.’Keywords:MATLAB;MultivariateNonlinearregression;Leastsquares;statistictoolbox

(上接第44页)

EntireSolutionsofFunctionalEquationf6(。)+96(z)+h6(z)=1

SUMin。LlYu—hua

(DepartmentofMathematics,YunnanNormalUniversity,YunnanKunming650092)

Abstract:Thispaperstudiestheentriesolutionsofthefunctionalequationf6(z)+96(z)+h6(z)=1.Itisshownthatthereisnononconstantentriefunctionswithordersmallerthanone

satisfyingtheequation八彳),g(z),h(z)withordersmallerthanonesatisfyingtheequationf6(z)+96(z)+h6(:)=1.Meanwhileanewbriefproofisgivenfortheknownresultsthatifrt≥7thereisnononconstantentriefunctionssolutionsofthefunctionalequationf“(彳)+g”(z)+h“(z)=1.

Keywords:Functionalequation;Entirefunction;Valuedistributiontheory

基于MATLAB的多元非线性回归模型

作者:董大校, DONG Da-xiao

作者单位:临沧师范高等专科学校,云南,临沧,6770000

刊名:

云南师范大学学报(自然科学版)

英文刊名:JOURNAL OF YUNAN NORMAL UNIVERSITY(NATURAL SCIENCES EDITION)

年,卷(期):2009,29(2)

被引用次数:0次

参考文献(2条)

1.袁建问经济计量学实验 2002

2.苏金明.阮沈勇.王永利MATLAB工程数学 2005

相似文献(7条)

1.学位论文康军基于径向基函数神经网络的应用研究2009

人工神经网络(ArtificialNeuralNetworks,简称为ANN)是理论化的人脑神经网络的模型,是模仿大脑神经网络结构和功能而建立起来的一种信息处理系统。人工神经网络的研究始于20世纪40年代,近二十年发展极为迅速,它的应用范围涉及到数学、工程、计算机、物理、生物、经济、管理等科学领域。本论文主要基于ANN的非线性逼近性质,借助MATLAB的神经网络工具箱,我们得出了如下的结果:

首先,我们实现了BP网络(下文中简写为BPNN)和径向基函数(RaclialBasisFunction)神经网络(下文中简写为RBFNN)的建立、学习和训练。通过仿真实例,体现了ANN的非线性逼近能力,并对BPNN和RBFNN进行比较研究,结果显示了RBFNN具有结构简单、训练速度快,并且有比较强的抗干扰能力,能达到很好的逼近效果。体现了RBFNN的函数逼近能力在多方面都优于BPNN。其次,我们把RBFNN作为一种新的回归方法应用到多元线性回归模型和多元非线性回归模型中。通过实例分析,结果表明RBFNN方法用于回归分析的拟合效果和预测效果很好而且简单方便。最后,我们用RBFNN进行了股票预测,通过以中国上证指数的540个交易日的数据为实验对象进行预测,得到了较好的预测效果。

本论文的结构安排如下:

第1章绪论。主要是论文的研究背景以及论文的主要工作。

第2章AAN基本理论。主要是ANN概述、BPNN和RBFNN简介以及ANN用于函数逼近的一些定理。为ANN的函数逼近能力的研究提供了理论基础。

第3章BPNN和RBFNN函数逼近仿真。主要是利用MATLAB神经网络工具箱,把BPNN和RBFNN应用于函数逼近的设计及仿真。

第4章RBFNN模型与多元回归模型。主要是RBFNN方法解决多元线性回归和多元非线性回归问题,并对传统回归方法和RBFNN方法在实际应用中进行了比较研究。

第5章RBFNN模型对股票市场价格进行预测。ANN可以看成是一个具有自学习功能的“黑箱”,在处理无法精确建模的问题上具有很大优势。由于股票的价格是非线性的时间序列,本文提出了基于RBFNN的股票价格预测模型,并应用该模型对于中国上证指数进行了预测。

结语。包括了论文的主要结论与不足,并为未来的研究提出建议。其中第3、4、5章是研究的核心部分。

2.期刊论文汪岚.黄彩虹.Wang Lan.Huang Caihong基于MATLAB色差预测多元回归模型的研究-计算机与应用化学2008,25(8)

由于间歇染色无法实现色差在线测量,直接影响染色的质量.在染色过程中,色差受多种工艺参数的影响,其中主要的有染料的初始浓度、染色时间、染色温度以及助剂的浓度.为了预测色差值,本文在实验数据分析的基础上,利用MATLAB统计工具箱的"nlinfit"函数,建立色差的多无非线性回归模型,并通过多元检验确定该模型的正确性.实验结果表明,多元非线性模型计算得到的色差值与实际值很接近,对生产实践具有一定的指导意义.

3.学位论文李宗波船舶转向过程中速度下降问题的研究2008

本文提出的船舶操纵性指数K'、T'估算公式较原有的线性估算公式大幅提高了K'、T'的预报精度,在保证回归方程显著性的基础上兼顾了数据拟合的精度和回归多项式的简洁性,符合精简实用的原则,对操船者在航海实践中评估船舶的操纵性能有一定的参考价值。

随着大型船舶的数量不断增长,船舶回转过程的速降问题已引起了人们的重视。原则上讲,回转中的速降需用非线性解析方法来确定,Abkowitz非线性数学模型以及分离型数学模型(MMG模型)虽然能预报包括速降在内的各种回转参数的变化情况,但都存在计算量大、较为复杂的问题。因此,实践中通常采用近似方法来估算之。戴维逊、费加耶夫斯基、Schoenherr等国外学者绘制了以相对回转直径为查表引数的速降系数曲线图或者给出了速降估算公式,但这些图表无法对船舶在不同载况(满载、半载、压载)下表现出的回转速降差异给出合理的解释。此外,这些图表和公式只能用于估算定常回转阶段速度V与初始速度V0之比,而对于船舶进入定常回转阶段之前的过渡阶段的速度下降情况无法进行估算,而过渡阶段恰好是船舶航行过程中进行转向避让经常涉及的范围,因而以上学者的研究成果存在一定的局限性。

本文另辟蹊径,从由响应型船舶运动数学模型推导出来的船舶操纵性指数K、T入手,用多项式回归的办法对47艘船舶的K、r指数统计资料进行分析,得出了具有一定精度的K'、T'指数估算公式。然后,以此为基础对多艘船的回转试验速降资料进行回归分析,把船舶的速降系数表征为船舶旋回性指数K'、船舶施加的舵角以及航向改变量△的函数关系,初步克服了国外关于回转速降研究成果的局限性,实现了对转向全过程的速降情况的估算。

本文以超大型油轮OPALIA号为例进行了回转速降的预报,用MATLAB绘制了速降曲线,并与国外学者的估算公式和曲线图进行了对比,取得了理想的效果,预报误差最大为14.6%,最小为0.3%。这表明,用多元非线性回归的方法实现对船舶整个转向过程中速降情况的预报具有一定的可行性。

4.期刊论文刘俏.高伟星.权春善.范圣第.Liu Qiao.Gao Weixing.Quan Chunshan.Fan Shengdi基于MATLAB发酵培养基的优化-计算机与应用化学2006,23(7)

发酵培养基配比的优化是含有多变量非线性目标函数的优化.以青霉素发酵为例,通过考察青霉素效价产率的大小,用MATLAB统计工具箱的"regress"函数对培养基配比进行多元非线性回归,以含有约束的回归方程作为目标函数,调用MATLAB优化工具箱的"fmincon"函数,对其进行优化,确定了适宜的培养基配比.将优化条件得到的预测值与实测值比较,当培养基配比为乳糖8.0%、花生饼粉4.0%及苯乙酰胺0.213%时,目标产物的效价产率为1226.0,与优化结果1210.9比较接近.

5.学位论文刘涛水库水质参数预测和富营养化预警2005

当今全球水资源短缺已经成为不争的事实。水质富营养化问题作为全球性的水污染问题之一,正日益引起全社会的关注。尤其是作为城市饮用水水源的水库富营养化问题更是严重威胁着城市供水的安全。本文以于桥水库为研究对象,以保障城市安全供水为目标,系统地研究了水库富营养化问题。 首先,文章对于桥水库的水质现状进行了调查研究、收集资料等工作。并在此基础之上,对所收集的资料进行了筛选和分析,绘制出于桥水库水质参数的时空分布规律曲线。

其次,藻类恶性增殖作为富营养化的核心体现,同时也直接威胁着城市供水安全,所以本文以藻类为切入点,选择反映藻类数量的叶绿素浓度作为

模型的标定和验证求解。进而采用CE-QUALW2理论模型的方案加以辅助验证。并分别比较了三种方法的优劣。

最后,针对上述研究结果,采用当前流行的水质预警理论应用于于桥水库的实际情况,研究制定出了相应的分级预警方案。并结合2003年全年的预测数据给出预警级别,效果良好。

至此,本文结合于桥水库的实际情况系统地研究了水库富营养化问题,提出了一套完整的解决方案,实际分析的结果显示该方案切实可行,可以应用于实际。

6.期刊论文李晓燕.张曙.余灯广.Li Xiaoyan.Zhang Shu.Yu Dengguang三维打印成形粉末配方的优化设计-机械

科学与技术2006,25(11)

利用均匀设计方法对三维打印成形的粉末配方进行了试验研究,对试验数据进行回归分析,建立了粉末成分配方对制件性能的多元非线性回归方程.设计了粉末配方的多目标优化模型,利用MATLAB软件求解出最佳配方并通过试验加以验证.采用均匀设计试验进行回归分析和优化是安排多水平配方设计的良好方法.

7.学位论文李琼水库水质富营养化预测预警研究2002

水质富营养化是全球性的水污染问题,正日益引起全社会的关注,尤其是作为城市饮用水水源的水库富营养化问题更是严重威胁着城市供水的安全.该文以于桥水库为研究对象,以保障城市安全供水为目标,系统地研究了水库富营养化问题.首先针对水库水质管理不完善的问题,引入了先进的GIS技术,研制开发了相关的水库水质管理软件,并结合于桥水库的具体地形图和水质信息建立了于桥水库水质管理信息系统,实现了水库水质的信息化管理,并为富营养化的预测、预警和防治规划提供了信息基础.其次,藻类恶性增殖作为富营养化的核心体现,同时也直接威胁着城市供水安全,所以该文以藻类为切入点,选择反映藻类数量的叶绿素浓度作为水质富营养化指标和预测预警对象进行研究,先后运用多元非线性回归方法和人工神经网络方法建立了预测模型,分别采用SAS和MATLAB编写了程序进行模型的标定和验证求解,并根据预测的结果结合水库的实际情况制定了相应的分级预警方案,在预警的基础上研究相应的应急防治措施,这些措施包括水库内的藻类削减措施和水厂采取的工艺和药剂方面的应急准备.最后,为了真正实现安全供水,对于桥水库富营养化成因进行了分析,并对现阶段可以实现的防治措施进行了系统的规划,使用Lingo软件对防治规划进行了优化分析,在保证水质、满足环境容量约束的条件下得到了最优的富营养化防治规划.

本文链接:https://www.360docs.net/doc/a110660044.html,/Periodical_ynsfdxxb200902011.aspx

授权使用:湖南工业大学(hngydx),授权号:ca626e8f-0499-4820-bc5a-9d9f0168b89b,下载时间:2010年6月

24日

Matlab多元线性回归

Matlab多元线性回归 [ b , bint , r , rint , stats ]=regress ( y , x ) , 其中b 是回归方程中的参数估计值,bint 是b 的置信区间,r 和rint 分别表示残差及残差对应的置信区间。StatS 数组包含三个数字,分别是相关系数,F 统计量及对应的概率p 值。拟合结果: Y=b(1)x(1)+b(2)x(2)+b(3)x(3)+…+b(n)x(n) b(1)是系数,x(1)为全1的一个列向量。 注意:不是插值。 x=[1097 1284 1502 1394 1303 1555 1917 2051 2111 2286 2311 2003 2435 2625 2948 3155 3372];%因变量时间序列数据 y=[698 872 988 807 738 1025 1316 1539 1561 1765 1762 1960 1902 2013 2446 2736 2825];%自变量时间序列数据 X=[ones(size(x')),x']; [b,bint,r,rint,stats]=regress(y',X,0.05);%调用一元回归分析函数 rcoplot(r,rint)%画出在置信度区间下误差分布. 举例: x = 1 2 4 9 1 4 3 7 1 5 9 0 1 9 1 8 >> y=[10 3 90 48]'; >> [ b , bint , r , rint , stats ]=regress ( y , x ) 得到的结果 b = -186.8333 16.0238 21.8571 8.5952 bint = NaN NaN NaN NaN NaN NaN

matlab多元线性回归模型

云南大学数学与统计学实验教学中心 实验报告 一、实验目的 1.熟悉MATLAB的运行环境. 2.学会初步建立数学模型的方法 3.运用回归分析方法来解决问题 二、实验内容 实验一:某公司出口换回成本分析 对经营同一类产品出口业务的公司进行抽样调查,被调查的13家公司,其出口换汇成本与商品流转费用率资料如下表。试分析两个变量之间的关系,并估计某家公司商品流转费用率是6.5%的出口换汇成本. 实验二:某建筑材料公司的销售量因素分析 下表数据是某建筑材料公司去年20个地区的销售量(Y,千方),推销开支、实际帐目数、同类商品

竞争数和地区销售潜力分别是影响建筑材料销售量的因素。1)试建立回归模型,且分析哪些是主要的影响因素。2)建立最优回归模型。 提示:建立一个多元线性回归模型。

三、实验环境 Windows 操作系统; MATLAB 7.0. 四、实验过程 实验一:运用回归分析在MATLAB 里实现 输入:x=[4.20 5.30 7.10 3.70 6.20 3.50 4.80 5.50 4.10 5.00 4.00 3.40 6.90]'; X=[ones(13,1) x]; Y=[1.40 1.20 1.00 1.90 1.30 2.40 1.40 1.60 2.00 1.00 1.60 1.80 1.40]'; plot(x,Y,'*'); [b,bint,r,rint,stats]=regress(Y,X,0.05); 输出: b = 2.6597 -0.2288 bint = 1.8873 3.4322 -0.3820 -0.0757 stats = 0.4958 10.8168 0.0072 0.0903 即==1,0?6597.2?ββ,-0.2288,0?β的置信区间为[1.8873 3.4322],1,?β的置信区间为[-0.3820 -0.0757]; 2r =0.4958, F=10.8168, p=0.0072 因P<0.05, 可知回归模型 y=2.6597-0.2288x 成立. 1 1.5 2 2.5 散点图 估计某家公司商品流转费用率是6.5%的出口换汇成本。将x=6.5代入回归模型中,得到 >> x=6.5; >> y=2.6597-0.2288*x y = 1.1725

matlab建立多元线性回归模型并进行显著性检验及预测问题

matlab建立多元线性回归模型并进行显着性检验及预测问题 例子; x=[143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164]'; X=[ones(16,1) x]; 增加一个常数项Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]'; [b,bint,r,rint,stats]=regress(Y,X) 得结果:b = bint = stats = 即对应于b的置信区间分别为[,]、[,]; r2=, F=, p= p<, 可知回归模型y=+ 成立. 这个是一元的,如果是多元就增加X的行数! function [beta_hat,Y_hat,stats]=regress(X,Y,alpha) % 多元线性回归(Y=Xβ+ε)MATLAB代码 %? % 参数说明 % X:自变量矩阵,列为自变量,行为观测值 % Y:应变量矩阵,同X % alpha:置信度,[0 1]之间的任意数据 % beta_hat:回归系数 % Y_beata:回归目标值,使用Y-Y_hat来观测回归效果 % stats:结构体,具有如下字段 % =[fV,fH],F检验相关参数,检验线性回归方程是否显着 % fV:F分布值,越大越好,线性回归方程越显着 % fH:0或1,0不显着;1显着(好) % =[tH,tV,tW],T检验相关参数和区间估计,检验回归系数β是否与Y有显着线性关系 % tV:T分布值,beta_hat(i)绝对值越大,表示Xi对Y显着的线性作用% tH:0或1,0不显着;1显着 % tW:区间估计拒绝域,如果beta(i)在对应拒绝区间内,那么否认Xi对Y显着的线性作用 % =[T,U,Q,R],回归中使用的重要参数 % T:总离差平方和,且满足T=Q+U % U:回归离差平方和 % Q:残差平方和 % R∈[0 1]:复相关系数,表征回归离差占总离差的百分比,越大越好% 举例说明 % 比如要拟合y=a+b*log(x1)+c*exp(x2)+d*x1*x2,注意一定要将原来方程线化% x1=rand(10,1)*10; % x2=rand(10,1)*10; % Y=5+8*log(x1)+*exp(x2)+*x1.*x2+rand(10,1); % 以上随即生成一组测试数据 % X=[ones(10,1) log(x1) exp(x2) x1.*x2]; % 将原来的方表达式化成Y=Xβ,注意最前面的1不要丢了

利用Matlab进行线性回归分析之欧阳歌谷创编

利用Matlab进行线性回归分析 欧阳歌谷(2021.02.01) 回归分析是处理两个及两个以上变量间线性依存关系的统计方法。可以通过软件Matlab实现。 1.利用Matlab软件实现 在Matlab中,可以直接调用命令实现回归分析, (1)[b,bint,r,rint,stats]=regress(y,x),其中b是回归方程中的参数估计值,bint是b的置信区间,r和rint分别表示残差及残差对应的置信区间。stats包含三个数字,分别是相关系数,F统计量及对应的概率p值。 (2)recplot(r,rint)作残差分析图。 (3)rstool(x,y)一种交互式方式的句柄命令。 以下通过具体的例子来说明。 例现有多个样本的因变量和自变量的数据,下面我们利用Matlab,通过回归分析建立两者之间的回归方程。 % 一元回归分析 x=[1097 1284 1502 1394 1303 1555 1917 2051 2111 2286 2311

2003 2435 2625 2948 3, 55 3372];%自变量序列数据 y=[698 872 988 807 738 1025 1316 1539 1561 1765 1762 1960 1902 2013 2446 2736 2825];%因变量序列数据 X=[ones(size(x')),x'],pause [b,bint,r,rint,stats]=regress(y',X,0.05),pause%调用一元回归分析函数rcoplot(r,rint)%画出在置信度区间下误差分布。 % 多元回归分析 % 输入各种自变量数据 x1=[5.5 2.5 8 3 3 2.9 8 9 4 6.5 5.5 5 6 5 3.5 8 6 4 7.5 7]'; x2=[31 55 67 50 38 71 30 56 42 73 60 44 50 39 55 7040 50 62 59]'; x3=[10 8 12 7 8 12 12 5 8 5 11 12 6 10 10 6 11 11 9 9]'; x4=[8 6 9 16 15 17 8 10 4 16 7 12 6 4 4 14 6 8 13 11]'; %输入因变量数据 y=[79.3 200.1 163.1 200.1 146.0 177.7 30.9 291.9 160 339.4 159.6 86.3 237.5 107.2 155 201.4 100.2 135.8 223.3 195]'; X=[ones(size(x1)),x1,x2,x3,x4]; [b,bint,r,rint,stats]=regress(y,X)%回归分析 Q=r'*r sigma=Q/18 rcoplot(r,rint); %逐步回归 X1=[x1,x2,x3,x4];

matlab建立多元线性回归模型并进行显著性检验及预测问题

matlab建立多元线性回归模型并进行显著性检 验及预测问题 例子; x=[143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164]'; X=[ones(16,1) x]; 增加一个常数项 Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]'; [b,bint,r,rint,stats]=regress(Y,X) 得结果:b = bint = stats = 即对应于b的置信区间分别为[,]、[,]; r2=, F=, p= p<, 可知回 归模型 y=+ 成立. 这个是一元的,如果是多元就增加X的行数! function [beta_hat,Y_hat,stats]=regress(X,Y,alpha) % 多元线性回归(Y=Xβ+ε)MATLAB代码 % % 参数说明 % X:自变量矩阵,列为自变量,行为观测值 % Y:应变量矩阵,同X % alpha:置信度,[0 1]之间的任意数据 % beta_hat:回归系数 % Y_beata:回归目标值,使用Y-Y_hat来观测回归效果 % stats:结构体,具有如下字段 % =[fV,fH],F检验相关参数,检验线性回归方程是否显著 % fV:F分布值,越大越好,线性回归方程 越显著 % fH:0或1,0不显著;1显著(好) % =[tH,tV,tW],T检验相关参数和区间估计,检验回归系数β是 否与Y有显著线性关系 % tV:T分布值,beta_hat(i)绝对值越大, 表示Xi对Y显著的线性作用 % tH:0或1,0不显著;1显著 % tW:区间估计拒绝域,如果beta(i)在对 应拒绝区间内,那么否认Xi对Y显著的线性作用 % =[T,U,Q,R],回归中使用的重要参数 % T:总离差平方和,且满足T=Q+U % U:回归离差平方和 % Q:残差平方和 % R∈[0 1]:复相关系数,表征回归离差占总 离差的百分比,越大越好 % 举例说明 % 比如要拟合 y=a+b*log(x1)+c*exp(x2)+d*x1*x2,注意一定要将原来方程 线化 % x1=rand(10,1)*10;

多元线性回归 matlab中求解

多元线性回归matlab中求解 源代码: y=data(:,1); >> x=data(:,2:3); >> [b,bint,r,rint,stats]=regress(y,x) 结果: b =1.6031 21.0280 bint =0.6449 2.5612 14.4526 27.6034 r =-16.2442 8.8754 17.5828 8.3155 7.6692 -20.7990 0.1578 9.1298 21.1145 -28.9567 rint =-54.5200 22.0316 -28.0267 45.7775 -15.2745 50.4401 -29.9540 46.5850 -30.7374 46.0758 -57.6551 16.0572 -40.7942 41.1098 -30.8252 49.0848 -15.2155 57.4446 -59.3228 1.4095 stats =1.0148 742.1191 0.0000 322.5068 分析结果: stats四个值说明:判决系数r^2,,F统计值,p值,误差方差 y=a1*x(1)+a2*x(2);其中a1=1.6031,a2=21.0280, a1的置信区间【0.6449,2.5612】,a2的置信区间【14.45426,27.6043】,p小于0.05,说明显著效果很好,越小越好 在spss中求解:

线性规划matlab求解 例1:c=[2;3;1]; mix z=2*x1+3*x2+x3 >> a=[1 4 2;3 2 0]; s.t 1.x1+4*x2+2*x3>=8; >> b=[8;6]; 2.3*x1+2*x2>=6; >> [x,y]=linprog(c,-a,-b,[],[],zeros(3,1) ) 3.x1>=0,x2>=0,x3>=0结果:x =0.8066

多元回归分析matlab剖析

回归分析MATLAB 工具箱 一、多元线性回归 多元线性回归:p p x x y βββ+++=...110 1、确定回归系数的点估计值: 命令为:b=regress(Y , X ) ①b 表示???? ?? ????????=p b βββ?...??10 ②Y 表示????????????=n Y Y Y Y (2) 1 ③X 表示??? ??? ????? ???=np n n p p x x x x x x x x x X ...1......... .........1 (12) 1 22221 11211 2、求回归系数的点估计和区间估计、并检验回归模型: 命令为:[b, bint,r,rint,stats]=regress(Y ,X,alpha) ①bint 表示回归系数的区间估计. ②r 表示残差. ③rint 表示置信区间. ④stats 表示用于检验回归模型的统计量,有三个数值:相关系数r 2、F 值、与F 对应的概率p. 说明:相关系数2 r 越接近1,说明回归方程越显著;)1,(1-->-k n k F F α时拒绝0H ,F 越大,说明回归方程越显著;与F 对应的概率p α<时拒绝H 0,回归模型成立. ⑤alpha 表示显著性水平(缺省时为0.05) 3、画出残差及其置信区间. 命令为:rcoplot(r,rint) 例1.如下程序. 解:(1)输入数据. x=[143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164]'; X=[ones(16,1) x]; Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]'; (2)回归分析及检验. [b,bint,r,rint,stats]=regress(Y ,X) b,bint,stats 得结果:b = bint =

Matlab多变量回归分析教程

本次教程的主要内容包含: 一、多元线性回归 2# 多元线性回归:regress 二、多项式回归 3# 一元多项式:polyfit或者polytool 多元二项式:rstool或者rsmdemo 三、非线性回归 4# 非线性回归:nlinfit 四、逐步回归 5# 逐步回归:stepwise 一、多元线性回归 多元线性回归: 1、b=regress(Y, X ) 确定回归系数的点估计值

2、[b, bint,r,rint,stats]=regress(Y,X,alpha)求回归系数的点估计和区间估计、并检验回归模型 ①bint表示回归系数的区间估计. ②r表示残差 ③rint表示置信区间 ④stats表示用于检验回归模型的统计量,有三个数值:相关系数r2、F值、与F对应的概率p 说明:相关系数r2越接近1,说明回归方程越显著;时拒绝H0,F越大,说明回归方程越显著;与F对应的概率p<α时拒绝H0 ⑤alpha表示显著性水平(缺省时为0.05) 3、rcoplot(r,rint)画出残差及其置信区间 具体参见下面的实例演示 4、实例演示,函数使用说明 (1)输入数据 1.>>x=[143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164]'; 2.>>X=[ones(16,1) x]; 3.>>Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]'; 复制代码 (2)回归分析及检验 1. >> [b,bint,r,rint,stats]=regress(Y,X) 2. 3. b = 4. 5. -1 6.0730 6.0.7194 7. 8. 9.bint =

matlab多元非线性回归教程

matlab 回归(多元拟合)教程 前言 1、学三条命令 polyfit(x,y,n)---拟合成一元幂函数(一元多次) regress(y,x)----可以多元, nlinfit(x,y,’fun ’,beta0) (可用于任何类型的函数,任意多元函数,应用范围最主,最万能的) 2、同一个问题,这三条命令都可以使用,但结果肯定是不同的,因为拟合的近似结果,没有唯一的标准的答案。相当于咨询多个专家。 3、回归的操作步骤: 根据图形(实际点),选配一条恰当的函数形式(类型)---需要数学理论与基础和经验。(并写出该函数表达式的一般形式,含待定系数)------选用某条回归命令求出所有的待定系数。所以可以说,回归就是求待定系数的过程(需确定函数的形式) 一、回归命令 一元多次拟合polyfit(x,y,n);一元回归polyfit;多元回归regress---nlinfit(非线性) 二、多元回归分析 对于多元线性回归模型(其实可以是非线性,它通用性极高): e x x y p p ++ ++ = βββ 1 10 设变量12,,,p x x x y 的n 组观测值为12(,, ,)1,2, ,i i ip i x x x y i n = 记 ??????? ??=np n n p p x x x x x x x x x x 2 1 22221 1121111 1,?? ?? ? ?? ??=n y y y y 21,则?????? ? ??=p ββββ 10 的估计值为排列方式与线性代数中的线性方程组相同(),拟合成多元函数---regress 使用格式:左边用b=[b, bint, r, rint, stats]右边用=regress(y, x)或regress(y, x, alpha) ---命令中是先y 后x, ---须构造好矩阵x(x 中的每列与目标函数的一项对应) ---并且x 要在最前面额外添加全1列/对应于常数项

matlab多元非线性回归及显着性分析(实例)

matlab多元非线性回归及显著性分析 给各位高手:小弟有一些数据需要回归分析(非线性)及显著性检验(回归模型,次要项,误差及失拟项纯误差,F值和P值),求大侠帮助,给出程序,不胜感激。 模型: DA TA=... %DA TA前三列是影响因子,第四列为响应值 [2 130 75 48.61; 2 110 75 56.43; 2 130 45 61.32; 2 110 45 65.28; 1 110 45 55.80; 1 130 75 45.65; 1 110 75 50.91; 1 130 45 67.94; 1.5 120 60 74.15; 1.5 120 60 71.28; 1.5 120 60 77.95; 1.5 120 60 74.16; 1.5 120 60 75.20; 1.5 120 85 35.65; 1.5 140 60 48.66; 1.5 120 30 74.10; 1.5 100 60 6 2.30; 0.5 120 60 66.00; 2.5 120 60 75.10]; 回归分析过程: (1)MATLAB编程步骤1:首先为非线性回归函数编程,程序存盘为user_function.m function y=user_function(beta,x) b0 = beta(1); b1 = beta(2); b2 = beta(3); b3 = beta(4); x0 = x(:,1); x1 = x(:,2); x2 = x(:,3); x3 = x(:,4); y=b0*x0+b1*x1.^2+b2*x2.^2+b3*x3.^2; (2)MATLAB编程步骤2:编写非线性回归主程序,程序运行时调用函数user_function x=[1 2 130 75 48.61;

(研究生-数理统计)多元线性回归及显著性检验Matlab程序(完美版)

多元线性回归及显著性检验Matlab程序(完美版) 一、说明: 1、本程序是研究生教材《数理统计》(杨虎、刘琼、钟波编著)例4.4.1(P133)的Matlab 编程解答程序。教材上的例题只做了回归方程显著性分析和一次回归系数显著性分析(剔除x1后没有再检验x2和x3)。 2、本程序在以上的基础之上,还分别检验了x2和x3,并且计算精度更高。 3、本程序可根据用户的需要,在输入不同的显著性水平α之下得到相应的解答。 4、本程序移植性强,对于其他数据,只需要改变excel中的数据即可。 5、本程序输出的可读性强,整洁美观。 二、数据入下(将数据存入excel表格,文件名为jc_p133_example.xls。注意数据是按 ):

三、完整程序如下: %----------------------------by ggihhimm---------------------------- %《数理统计》杨虎、刘琼、钟波编著例4.4.1 多元线性回归及显著性检验完整解答 % 输入需要的显著水平α(默认α=0.02),计算出不同结果(见运行结果) % 该程序也适合其他维数的数据分析(只需改变excel表格中的数据即可) %----------------------------by ggihhimm---------------------------- clear;clc; data=xlsread('jc_p133_example.xls','sheet1'); xi=data(:,1:end-1); [n,k]=size(data); k=k-1; index_of_xi_array=ones(1,k); X=[ones(n,1) xi]; Y=data(:,end); fprintf('第1次计算结果:\r') beta_mao=((X'*X)\X'*Y)'; fmt_str0=''; for i0=1:k+1 fmt_str0=[fmt_str0 'β' num2str(i0-1) ' = %0.4f\r']; end fprintf(fmt_str0,beta_mao) fprintf('\r')

Matlab线性回归(拟合)-应用

Matlab 线性回归(拟合) 对于多元线性回归模型: e x x y p p ++++=βββ 110 设变量12,,,p x x x y 的n 组观测值为 12(,,,)1,2,,i i ip i x x x y i n =. 记 ??????? ??=np n n p p x x x x x x x x x x 2122221112 11111,??????? ??=n y y y y 21, 则?????? ? ??=p ββββ 10 的估计值为 y x x x b ')'(?1-==β 在Matlab 中,用regress 函数进行多元线性回归分析,应用方法如下: 语法:b = regress(y, x) [b, bint, r, rint, stats] = regress(y, x) [b, bint, r, rint, stats] = regress(y, x, alpha) b = regress(y, x),得到的p+1维列向量b 即为(11.2)式给出的回归系数β的 估计值. [b, bint, r, rint, stats]=regress(y, x) 给出回归系数β的估计值b ,β的95%置 信区间((p+1)*2向量)bint ,残差r 以及每个残差的95%置信区间(2?n 向量)rint ;向量stats 给出回归的R2统计量和F 以及临界概率p 的值. 如果i β的置信区间(bint 的第i+1行)不包含0,则在显著水平为α时拒绝0i β=的假设,认为变量i x 是显著的. [b, bint, r, rint, stats]=regress(y, x, alpha) 给出了bint 和rint 的100(1-alpha)%的置信区间. 1.三次样条插值函数的MATLAB 程序 matlab 的spline x = 0:10; y = sin(x); %插值点 xx = 0:.25:10; %绘图点 yy = spline(x,y,xx);

matlab多元线性回归模型

matlab多元线性回归模型

云南大学数学与统计学实验教学中心 实验报告 一、实验目的 1.熟悉MATLAB的运行环境. 2.学会初步建立数学模型的方法 3.运用回归分析方法来解决问题 二、实验内容 实验一:某公司出口换回成本分析 对经营同一类产品出口业务的公司进行抽样调查,被调查的13家公司,其出口换汇成本与商品流转费用率资料如下表。试分析两个变量之间的关系,并估计某家公司商品流转费用率是6.5%的出口换汇成本.

实验二:某建筑材料公司的销售量因素分析 下表数据是某建筑材料公司去年20个地区的销售量(Y,千方),推销开支、实际帐目数、同类商品竞争数和地区销售潜力分别是影响建筑材料销售量的因素。1)试建立回归模型,且分析哪些是主要的影响因素。2)建立最优回归模型。

提示:建立一个多元线性回归模型。 三、实验环境 Windows操作系统; MATLAB 7.0. 四、实验过程 实验一:运用回归分析在MATLAB里实现 输入:x=[4.20 5.30 7.10 3.70 6.20 3.50 4.80 5.50 4.10 5.00 4.00 3.40 6.90]'; X=[ones(13,1) x]; Y=[1.40 1.20 1.00 1.90 1.30 2.40 1.40 1.60 2.00 1.00 1.60 1.80 1.40]'; plot(x,Y,'*'); [b,bint,r,rint,stats]=regress(Y,X,0.05); 输出: b = 2.6597 -0.2288 bint = 1.8873 3.4322 -0.3820 -0.0757 stats = 0.4958 10.8168 0.0072

Matlab线性回归(拟合)

Matlab 线性回归(拟合) 对于多元线性回归模型: e x x y p p ++++=βββ 110 设变量12,,,p x x x y 的n 组观测值为 12(,,,) 1,2,,i i ip i x x x y i n = . 记 ??????? ? ?=np n n p p x x x x x x x x x x 2 1 222211121111 1,?? ?? ??? ??=n y y y y 2 1 ,则???? ?? ? ??=p ββββ 10 的估计值为 y x x x b ')'(?1-==β (11.2) 在Matlab 中,用regress 函数进行多元线性回归分析,应用方法如下: 语法:b = regress(y, x) [b, bint, r, rint, stats] = regress(y , x) [b, bint, r, rint, stats] = regress(y , x, alpha) b = regress(y, x),得到的1+p 维列向量b 即为(11.2)式给出的回归系数β的估计值. [b, bint, r, rint, stats]=regress(y , x) 给出回归系数β的估计值b ,β的95%置信区间((1)2p +?向量)bint ,残差r 以及每个残差的95%置信区间(2?n 向量)rint ;向量stats 给出回归的R 2 统计量和F 以及临界概率p 的值. 如果i β的置信区间(bint 的第1i +行)不包含0,则在显著水平为α时拒绝0i β=的假设,认为变量i x 是显著的. [b, bint, r, rint, stats]=regress(y , x, alpha) 给出了bint 和rint 的100(1-alpha)%的置信区间. 三次样条插值函数的MATLAB 程序 matlab 的spline x = 0:10; y = sin(x); %插值点 xx = 0:.25:10; %绘图点 yy = spline(x,y ,xx); plot(x,y,'o',xx,yy)

应用MATLAB进行非线性回归分析资料讲解

应用M A T L A B进行非线性回归分析

应用MATLAB进行非线性回归分析 摘要 早在十九世纪,英国生物学家兼统计学家高尔顿在研究父与子身高的遗传问题时,发现子代的平均高度又向中心回归大的意思,使得一段时间内人的身高相对稳定。之后回归分析的思想渗透到了数理统计的其他分支中。随着计算机的发展,各种统计软件包的出现,回归分析的应用就越来越广泛。回归分析处理的是变量与变量间的关系。有时,回归函数不是自变量的线性函数,但通过变换可以将之化为线性函数,从而利用一元线性回归对其进行分析,这样的问题是非线性回归问题。下面的第一题:炼钢厂出钢水时用的钢包,在使用过程中由于钢水及炉渣对耐火材料的侵蚀,使其容积不断增大。要找出钢包的容积用盛满钢水时的质量与相应的实验次数的定量关系表达式,就要用到一元非线性回归分析方法。首先我们要对数据进行分析,描出数据的散点图,判断两个变量之间可能的函数关系,对题中的非线性函数,参数估计是最常用的“线性化方法”,即通过某种变换,将方程化为一元线性方程的形式,接着我们就要对得到的一些曲线回归方程进行选择,找出到底哪一个才是更好一点的。此时我们通常可采用两个指标进行选择,第一个是决定系数 ,第二个是剩余标准差。进而就得到了我们想要的定量关系表达式。第二题:给出了某地区1971—2000年的人口数据,对该地区的人口变化进行曲线拟合。也用到了一元非线性回归的方法。首先我们也要对数据进行分析,描出数据的散点图,然后用MATLAB编程进行回归分析拟合计算输出利用Logistic模型拟合曲线。 关键词:参数估计,Logistic模型,MATLAB 正文 一、一元非线性回归分析的求解思路:

基于MATLAB的多元非线性回归模型

第29卷第2期2009年3月 云南师范大学学报 JournalofYunnanNormalUniversity V01.29No.2 Mar.2009基于MATLAB的多元非线性回归模型‘ 董大校 (临沧师范高等专科学校,云南临沧6770000) 摘要:MATLAB是源于矩阵运算的一种高度集成的计算机语言。它提供了强大的科学运算、灵活的 程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。文章充分利用 MATLAB统计工具箱的优势,通过程序的实现,对多元非线性回归模型的未知参数的估计方法以及对估 计后的模型预报做出研究,并以实例验证了该方法的有效性。 关键词:MATLAB;多元非线性回归;td,--乘法;统计工具箱 中图分类号:TP301文献标识码:A文章编号:1007—9793(2009)02—0045—04 l预备知识 非线性回归最小二乘法拟合的基本原理…。 对给定数据(菇i,Y;)(i=0,l,…,rrt),在取定的函数类西中,求p(x)∈痧,使误差t=p(x)一Y。(i=0,1,…,m)的平方和最小,即 ∑#=∑[p(戈i)一,,i]2 最小,从几何意义上讲,就是寻求与给定点(菇i,Y;)(i=0,1,…,rn)的距离平方和为最小的曲线Y=p(菇)(图1)。函数p(x)称为拟合函数或最小二乘解,求拟合函数p(x)的方法称为曲线拟合的最小二乘法。 2MATLAB非线性曲线拟合命令介绍 2.1nHnfit函数旧1 用nlinfit函数进行非线性最小二乘数据拟合。该函数使用高斯一牛顿算法,调用格式如下: Qbeta=nlinfit(X,Y,fun,beta0)用最小二乘法估计非线性函数系数。Y为响应值(因变量)矢量。一般地,为自变量值组成的设计矩阵,每一行对应与Y中的一发个值。但是,x可以是fun参数能接受的任何数组。fun参数为一函数,该函数具有下面的形式 yhat=myfun(beta。X) 其中beta为系数矢量,x为设计矩阵。fun为参数返回一个拟合Y值的yhat矢量。betaO为包含系数初始值的矢量。 ●[beta,r,J]=nlinfit(X,Y,fun,beta0)返回拟合系数(beta)、残差(r)、和雅可比矩阵J,这些参数可以用于nlintool函数,生成预测值的误差估计;或用于nlparci函数生成系数的误差估计。 2.2nlintool函数 使用nlintool函数可以对数据进行非线性方程拟合并交互图形显示,其调用格式如下: ?收稿日期:2008—10-23 作者简介:董大校(1965一),男,云南省临沧市人,副教授,主要从事数学教学科研工作.

MATLAB 非线性 回归 拟合 nlintool

非线性回归 非线性回归可用命令nlinfit,nlintool,nlparci,nlpredci来实现。 进行非线性回归时可使用nlinfit指令,其语法如下: beta = nlinfit(X,y,fun,beta0) [beta,r,J] = nlinfit(X,y,fun,beta0) [...] = nlinfit(X, y, fun, beta0, options) 回归: 回归可用命令 [beta,r,J]=nlinfit(x,y,model,beta0) 或者 nlintool(x,y,model,beta0,alpha) 来实现。 其中: 命令 [beta,r,J]=nlinfit(x,y,model,beta0)的作用为确定回归系数; 而命令 nlintool(x,y,model,beta0,alpha) 产生一个交互式的画面,画面中有拟合曲线和y的置信区间。 通过左下方的Export下拉式菜单,可以输出回归系数等。 这里的输入数据: x、y分别为 m×n 矩阵和n维列向量,对一元非线性回归,x为n维列向量; model是事先用m-文件定义的非线性函数; beta0是回归系数的初值。 Beta是估计出的回归系数, r(残差)、 J(Jacobian矩阵)是估计预测误差需要的数据。 alpha为显著性水平,缺省时为0.05。 预测和预测误差估计: 预测和预测误差估计的命令格式为 betaci=nlparci(beta,r,J) 其用途为记算回归系数的置信区间; [Y,DELTA]=nlpredci(model,x,beta,r,J) 其用途为求nlinfit或nlintool所得的回归函数在x处的预测值Y及预测值的显著性为

Matlab回归分析程序

一、多元线性回归 p p x x y βββ+++=...110,对于一元线性回归,取p=1。 例一: x=[143 145 146 147 149 150 153 154 155 156 157 158 159 160 162 164]'; X=[ones(16,1) x]; Y=[88 85 88 91 92 93 93 95 96 98 97 96 98 99 100 102]'; [b,bint,r,rint,stats]=regress(Y,X) b,bint,stats rcoplot(r,rint) z=b(1)+b(2)*x plot(x,X,'k+',x,z,'r') %画回归直线 二、多项式回归 一元多项式回归 1121...+-++++=m m m m a x a x a x a y 例二: t=1/30:1/30:14/30; s=[11.86 15.67 20.60 26.69 33.71 41.93 51.13 61.49 72.90 85.44 99.08 113.77 129.54 146.48]; [p,S]=polyfit(t,s,2) 预测及作图 Y=polyconf(p,t,S) plot(t,s,'k+',t,Y,'r') 该模型亦可化为多元线性回归: t=1/30:1/30:14/30; s=[11.86 15.67 20.60 26.69 33.71 41.93 51.13 61.49 72.90 85.44 99.08 113.77 129.54 146.48]; T=[ones(14,1) t' (t.^2)']; [b,bint,r,rint,stats]=regress(s',T); b,stats

相关文档
最新文档