首页 基于Matlab的数据多元回归分析的研究

基于Matlab的数据多元回归分析的研究

举报
开通vip

基于Matlab的数据多元回归分析的研究基于Matlab的数据多元回归分析的研究 合肥师范学院2015届本科生毕业论文(设计) 学号:1111431040 本科毕业论文(设计) (2015届) 基于Matlab的数据多元回归分析的研究 院 系 电子信息工程学院 专 业 电气工程及其自动化 姓 名 张婷婷 指导教师 尹静 2015年5月 合肥师范学院2015届本科生毕业论文(设计) 摘 要 多元线性回归是利用MATLAB软件研究一个变量与多个变量的定量关系,MATLAB(矩阵实验室,是MATrix LABoratory的缩写)是...

基于Matlab的数据多元回归分析的研究
基于Matlab的数据多元回归分析的研究 合肥师范学院2015届本科生毕业论文(设计) 学号:1111431040 本科毕业论文(设计) (2015届) 基于Matlab的数据多元回归分析的研究 院 系 电子信息工程学院 专 业 电气工程及其自动化 姓 名 张婷婷 指导教师 尹静 2015年5月 合肥师范学院2015届本科生毕业论文(设计) 摘 要 多元线性回归是利用MATLAB软件研究一个变量与多个变量的定量关系,MATLAB(矩阵实验室,是MATrix LABoratory的缩写)是一套高性能的数值运算和可视化软件,它集矩阵运算、数值分析、信号处理和图形显示于一体,构成了一个界面友好、使用方便的用户环境,是实现数据分析与处理的有效工具,其中MATLAB统计工具箱更为人们提供了一个强有力的数据统计分析工具。利用MATLAB统计工具箱来进行数据的多元回归分析使得分析的样本容量扩大,增加了统计推断的正确性,也促进了包含大量计算的多元统计分析的发展和运用。 本课题研究了在MATLAB软件平台上实现数据的多元统计分析,具体包括一元线性回归分析,非线性回归分析,多元线性回归分析,通过对基础数据分析函数polyfit(一元回归);regress(多元回归);及nlinfit(非线性回归)的学习。根据已得的实验结果以及以往的经验来建立统计模型,并研究变量之间的相关关系,建立起变量之间关系的近似 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 达式,并由此对相应的变量进行预测和控制。 根据所收集的数据,通过本文的研究方法进行一一分析,掌握它们的相关关系,可以找出数据中我们最需要的信息,从而进一步对总体的特性进行进一步的判断,把握规律,并将研究结果广泛运用于各种实际应用的预测和判断之中。 关键词:polyfit,regress,置信区间,最小二乘估计 - 1 - 合肥师范学院2015届本科生毕业论文(设计) Abstract Multiple linear regression is a variable and multiple variables are studied by using MATLAB software quantitative relationship of MATLAB (MATrix LABoratory, is the abbreviation of MATrix LABoratory) is a high-performance numerical calculation and visualization software, it combines MATrix operations, numerical analysis, signal processing and graphic display at an organic whole, constitute a friendly interface, easy to use user environment, including the MATLAB statistic tool box more people provided a powerful data statistical analysis tools. Using MATLAB toolbox for data statistics makes analysis of the sample size of expansion, multiple regression analysis to increase the validity of the statistical inference, also promoted the contains a large amount of computing multivariate statistical analysis of the development and use. This topic is studied on MATLAB software platform to realize data of multivariate statistical analysis, including a yuan linear regression analysis, nonlinear regression analysis, multivariate linear regression analysis, based on basic data analysis function polyfit (unary regression); Regress (multiple regression); Learning and nlinfit (nonlinear regression), According to the experimental results have been and past experience to build a statistical model, and studies the correlation between variables, establish the approximate expressions of the relation between variables, and thus to predict and control the corresponding variables. Based on the collected data, through the research methods of this article analysis, grasp their relationship, can find what we need most in this data information, thus further further judgment, the characteristics of the overall grasp the rule. Will the results of the study is widely used in all kinds of practical application of prediction and judgment. Key word word文档格式规范word作业纸小票打印word模板word简历模板免费word简历 s: polyfit,regress, confidence intervals, the least squares estimate - 2 - 合肥师范学院2015届本科生毕业论文(设计) 目 录 摘 要............................................................................................ - 1 - 绪论................................................................................................ - 5 - 1.1研究的背景 ............................................................................................ - 5 - 1.2研究的主要内容 .............................. - 6 - 1.3应解决的关键问题 .............................................................................. - 6 - 2 MATLAB数据分析..................................................................... - 6 - 2.1 MATLAB重点基础预备 ....................................................................... - 6 - 2.1.1 MATLAB界面掌握 ...................................................................... - 6 - 2.1.2矩阵及其运算 ............................................................................. - 7 - 2.2数据分析 .................................... - 8 - 2.2.1样本数据的基本统计量 .......................................................... - 8 - 3 一元回归分析 ......................................................................... - 9 - 3.1一元回归模型 ....................................................................................... - 9 - 3.1.1一元线性回归 ............................................................................. - 9 - 3.1.2一元多项式回归 ...................................................................... - 10 - 3.2一元非线性回归 ................................................................................. - 11 - 3.2.1非线性曲线选择 ...................................................................... - 11 - 3.2.2非线性回归命令的调用格式 ............................................... - 11 - 3.3一元回归建模实例 ............................................................................ - 13 - 4 多元线性回归模型 ............................................................... - 15 - 4.1多元线性回归初级分析 ................................................................... - 15 - - 3 - 合肥师范学院2015届本科生毕业论文(设计) 4.1.1多元回归基本概念 ................................................................. - 15 - 4.1.2建立多元线性回归建模的基本步骤 ................................. - 16 - 4.2 MATLAB的回归分析命令 ................................................................ - 17 - 4.2.1 多元回归建模命令 ................................................................ - 17 - 4.2.2 多元回归辅助图形命令 ....................................................... - 17 - 4.3 一元回归建模实例 ........................................................................... - 18 - 5 GUI界面的设计 .................................................................... - 25 - 5.1 GUI界面的介绍 ................................................................................. - 25 - 5.2 GUI的设计流程 .............................................................................. - 25 - 5.2 实例的GUI设计 ............................................................................... - 27 - 结 论.......................................................................................... - 30 - 参考文献....................................................................................... - 31 - 附 录 ........................................................................................ - 32 - 致谢 .............................................................................................. - 36 - - 4 - 合肥师范学院2015届本科生毕业论文(设计) 绪论 1.1研究的背景 MATLAB是一套集高性能的数值计算和可视化整理、计算、绘制图表等于一身的数学工具。它集矩阵运算、数值分析、信号处理和图形显示于一体,构成了一个界面友好、使用方便的用户环境,是实现数据可视化的软件,该软件是使用在数据整理和分析阶段。在数据分析与处理中,起着重要的作用。其中MATLAB统计工具箱更为人们提供了一个强有力的统计分析工具。该软件作为数据分析的工具提高了计算能力,使得样本容量扩大,增加了统计推断的正确性,也促进了包含大量计算的多元统计分析等方法的发展和运用。软件的使用还为数据分析过程节约了大量时间,提高了数据分析的效率。 矩阵是MATLAB数据存储的基本单元,而矩阵运算是MATLAB语言的核心,在MATLAB语言系统中几乎一切运算均是以对矩阵的操作为基础的。对于数据描述分析的过程,它是从样本数据出发,概括分析数据的集中位置、分散程度、相互关联关系,以及数据分布的正态或偏态特征等。它是数据进一步分析的基础,对不同类型量纲的数据有时还要进行变换,然后再作出合理分析。数据分布特征一般用偏度与峰度描述,偏度是用于衡量分布不对称程度的指标。峰度是用来衡量 - 5 - 合肥师范学院2015届本科生毕业论文(设计) 数据尾部分散性的指标。 回归分析是最常用的数据分析方法之一,它是根据已得的实验结果以及以往的经验来建立统计模型,并研究变量之间的相关关系,建立起变量之间关系的近似表达式,并由此对相应的变量进行预测和控制。 1.2研究的主要内容 本课题主要研究的是根据所得的样本数据,使用MATLAB软件平台分析它们的相关性,建立起变量的相关性 ,并由此对相应的变量进行预测和控制。主要分为一元回归模型、多元回归模型、非线性回归模型,其中多元回归是最重要的研究对象。 比如对于一元回归模型,首先对总体样本(X,Y)进行n次独立观测,获得n组数据,再输入语言和命令,然后根据直角坐标系作散点图,建立一元线性回归模型,计算最佳参数运行可得相应的回归模型。类似的分析方法还有很多。像多维的变量组合,会有很多线性回归方程,我们可以利用逐步回归取得最终结果。 1.3应解决的关键问题 在很多实际问题中,与某个变量Y有关系的变量不止一个,研究一个变量与多个变量之间的定量关系问题就是研究多元回归问题,但是它和一元回归模型的建立的方法类似。这里我们重点研究的关键问题是多元线性回归怎样建模。 在多元线性回归中,要理解与多元回归模型有关的命令,多元回归建模命令,调用格式在不同情境下该如何灵活运用。三种调用方式主要区别是什么,并要了解残差图命令及其调用格式。当数据输入后得到相应的图形出现异常点,又该如何重新建模。 2 MATLAB数据分析 2.1 MATLAB重点基础预备 2.1.1 MATLAB界面掌握 - 6 - 合肥师范学院2015届本科生毕业论文(设计) MATLAB大致包括菜单栏,工具栏,命令窗口,工作空间管理窗口,历史命令记录窗口,当前目录窗口。一般来说,MATLAB所有函数和命令都可以在命令窗口执行,在命令窗口中输入figure,可产生一个与命令窗口隔离的图形窗口。但一般指令较多的情况下,我们可以调用M文件,在编辑器写下相应程序,保存wlb_1(这是文件名),然后在命令窗口中执行。 MATLAB数据类型主要包括字符串,数字,矩阵,单元型数据及结构型数据等。而且提供了近20类基本命令函数,还提供了循环语句,两种循环方式:for???end循环和while???end循环;条件控制语句,if???else???end语句;continue语句,break语句和return语句。 2.1.2矩阵及其运算 矩阵是MATLAB数据存储的基本单元,而矩阵的运算则是MATLAB语言的核心,在MATLAB语言系统中几乎一切运算都是以对矩阵的操作为基础的。 操作符 : m:n产生一个数组[m,m+1,„,n];m:k:n产生一个数组 [m,m+k,„,n];A(:,j)取矩阵A的第j列;A(k,:)取矩阵A的第k行 ; 在矩阵中表示一行的结束;在命令语句的结尾表示不显示这行语句的 执行结果 % 在编程中引导注释行,而系统解释执行程序,%后面的内容不作处理 运算符 关系运算符,算术运算符,逻辑运算符 矩阵的运算(1)矩阵间的运算,(2)矩阵的标量运算,一般为矩阵的每个元素与标量间的运算,(3)矩阵的基本函数运算,矩阵中最实用的运算(4)矩阵的数据处理,比如求最大值、求和、求均值等。 det(A) 求矩阵A的行列式 min(A) 求向量或矩阵列的最 小值 Inv(A) 求方阵A的逆矩阵 mean(A) 求向量或矩阵列的平 均值 size(A) 求矩阵A的阶数 sum(A) 求向量或矩阵列的元 素和 - 7 - 合肥师范学院2015届本科生毕业论文(设计) eig(A) 求A的特征值及特征var(A) 求向量或矩阵列的方 向量 差 rank(A) 求矩阵A的秩 cov(A) 求向量或矩阵列的协 方差矩阵 max(a) 求向量或矩阵列的最std(A) 求向量或矩阵列的标 大值 准差 数组的输入与运算,只有一行的矩阵也称为数组或向量,我们也要清楚的把握数组的输入;数组元素的访问,访问一个元素,访问一块元素;标量与数组的运算,标量与数组的加减乘除及乘方运算是数组的每个元素与该标量的运算;数组与数组间的运算,数组与数组的运算要求维数是相同的,数组的乘除法是指两个同维数组对应元素之间的乘除法,它们的运算符,只能是“?*”、“?/”。 2.2数据分析 2.2.1样本数据的基本统计量 描述样本数据基本特性主要是集中位置和分散程度,那么均值、中位数、分位数及三均值亦可充分反映。 1.均值命令mean,其调用格式为:m=mean(x); 2.中位数命令median,其调用格式:MD=median(X); 3.P分位数调用命令prctile,其调用格式为SM=prctile(X,P); 4.三均值: Ù M=0.25+0.5M+0.25MM0.250.75 5.方差:方差是描述数据取值分散性的一种度量,它是数据相对与均值的偏 差平方的平均。 n212,,()XX ,sin,1i,1 6.其算术平方根称为 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 差或根方差,即 n21 sXX,,(),i,n,11i - 8 - 合肥师范学院2015届本科生毕业论文(设计) 7.偏度或峰度:数据分布一般要用偏度或峰度描述。偏度用来描述衡量分布不对称程度或偏斜程度的指标,样本数据的偏度为: 2n, 3,pd312 ()(),,nns 峰度用来衡量数据尾部分散性的指标,样本数据的峰度定义为: 22n,31(),n4 ,,f4d()(),,23nn()(),,12nns 当数据的总体分布为正态分布时,峰度近似为0;当峰度大于0时,数据中含有较多远离均值的极端数值,称数据分布具有平峰后尾性,同样与上述相比,当峰度小于0时,表示均值两侧的极端数值较少,则数据称为尖峰细尾性,且调用峰度的命令为kurtosis,其调用格式fd=kurtosis(x,flg),同样对于偏度的调用格式为:Pd=skewness(x,flg),当x为矩阵时,输出的Pd为数组,其中第i个元素是x的第i列数据的偏度。 3 一元回归分析 3.1一元回归模型 3.1.1一元线性回归 回归分析是最常用的数据方法之一,它是根据以往的经验来建立的统计模型,并研究变量之间的相关关系,建立起变量之间关系的近似表达式,并由此对相应的变量进行预测和控制等。本章将介绍一元回归模型、非线性回归等内容。 设Y是一个可观测的随机变量,它受到一个非随机变量因素x和随机误差ε的影响。若Y与x有如下关系: Y,,,,x,, 01 (3.1.1) 2 ,,, ,且ε的均值E(ε)=0,方差var(ε)= (>0),其中、是固定的01未知参数,称为回归系数,Y称为因变量,x称为自变量,则称式(3.1.1)为一 - 9 - 合肥师范学院2015届本科生毕业论文(设计) 元线性回归模型。 对于实际问题,要建立回归方程,首先要确定是否能建立线性回归模型,其次确定如何对模型中未知参数、进行估计。 , ,01 所以我们首先要对总体(x,Y)进行n 次独立观测,获得 n组数据,这些数据我们又称为样本观测值,(x1,,y2),(x2,y2),„(xn, yn),然后在直角坐标系画出数据点,该图形为数据的散点图,那么如果这些点大致的位于同一条直线的附近,或者这个图形呈线性形状、则认为Y与x之间的关系符合一元线型回归模型。 最后我们利用最小二乘法可以得到回归模型参数、的最小二乘估计 , ,01 ,~,??,估计公式为: 01 ,,,,,yx01 ,, ,Lxy (3.1.2) ,, ,1 L,xx,nn11其中: xXyy, ~, ~,, ii,,11nn iinn2LXXLxxyy,,,,,(),()() ,,xxixyii,,11ii , yx,,,,于是我们就可以建立公式模型: 01 接下来我们可以对一元线性回归分析 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 为三点,一是利用样本观测值对回归系数、和做点估计;二是对方程的线性关系做显著性检验,三是在x=x0,, ,01 处对Y做预测等。 3.1.2一元多项式回归 在一元线性回归中,如果变量x与y关系是n次多项式,即 nn,1yaxaxaxa,,,,,,(3.1.3) nn,110 2,其中,ε是随机误差,服从正态分布N(0,),a0,a1,„,an为回归系数,则称公式(3.1.3)为一元多项式回归模型。 1. 多项式曲线拟合,其调用命令为,其相应的调用格式有3种 p=polyfit(x,y,n) [p,s]=plyfit(x,y,n) [p,s,mu]=polyfit(x,y,n) - 10 - 合肥师范学院2015届本科生毕业论文(设计) 当输入x,y分别为自变量和因变量的样本参数估计向量;n是多项式的阶数, 对于一元线性回归,则取n为1,p是按照降幂排列的多项式的系数向量;S 是一个矩阵,用于估计预测误差;mu是一个向量给出自己变量的均值与标 准差。 2. 多项式回归模型的预测及其置信区间 在MATLAB统计工具箱中,有多项式曲线拟合预测的命令polyval,其相应的 调用格式有以下2种:Y=polyval(p,x0) [Y,Delta]=polyconf(p,x0,s,alpha) 其中,p,S是多项式拟合命令[p,S]=polyfit(x,y,n)的输出,x0是要预测的自变量的值;输出Y是polyfit所得的回归多项式在x处的预测值,如果输入数据的误差相互独立,且方差为常数,则YDelta至少包含的预测值,默认值为0.05。 , 3.2一元非线性回归 3.2.1非线性曲线选择 为了便于正确选择合适的函数进行回归分析建模,通常有6种曲线可共参 ,,x,,,,,,,yxx1?,1p0111121,,,,,,,,x,1yxx?,,,,,,,,,21p221222考,(1)双曲线 YX,,,,,,,,,,,,,,,,,????????,,,,,,,,,,,,,,,,,yxx1?,xpnnnn12,,,,np,,,, byax,)幂函数曲线(2其中x>0, a>0 bxyae,(3)指数曲线 , 其中参数a>0 bx,yae,(4)倒指数曲线,其中a>0 yabx,,ln(5)对数曲线 1 y,(6)S型曲线 ,其中ab>0 ,xabe, 非线性回归建模通常有两种方法:一是通过适当的变换化为线性回 11,,1b,,,,yx,yabx,,归型,例如 ,如果做变换,则有,,,ayxyx ,,yx,此时 就是一阶线性回归模型;如果无法实现线性化,可以利用最小二乘法直接建立非线性回归模型,可以求解最佳参数。 3.2.2非线性回归命令的调用格式 MATLAB统计工具箱实现非线性回归的命令有nlifit,nlpredci,nlparci,下 - 11 - 合肥师范学院2015届本科生毕业论文(设计) 面逐一介绍其格式: 1)非线性拟合命令为nlinfit,其调用格式如下: [beat,r,J]=nlinfit(x,y,’model’,beta0)其中x,y分别为n*mmodel是事先用M文件定义的非线性函数,beat0()是回归系数的初值,beat是估计出的最佳回归系数,r是残差,J是雅克比矩阵。通常可利用inline定义函数model,方法如下:fun=inline(‘f(x)’,’参变量‘,‘x’) 2)非线性回归预测命令为nlpredict,其调用格式如下: Yprd=nlpredict(FUN,inputs,beta,r,J)其中FUN是拟合函数,inputs是预测的自变量,ypred是预测值。 3)非线性回归置信区间命令为nlparci,其调用格式如下: Ci=nlparci(beat,r,J,alpha)其中ci是一个矩阵,每一行分别为每个参数的(1-alpha)%的置信区间,alpha默认值为0.05. 非线性回归实例: x=2,3,4,5,6,7,8,9,10,11,12,13,14,15,16; y=6.42,8.2,9.58,9.5,9.7,10,9.93,9.99,10.49,10.59,10.6,10.8,10.6,10.9, 10.76; 现在我们根据描点作图大概知道这组数据的曲线图近似于曲线1/y=a+b/x,因此我们通过matlab程序建立非线性回归的模型。 x=[2:16]; y=[6.42,8.2,9.58,9.5,9.7,10,9.93,9.99,10.49,10.59,10.6,10.8,10.6 ,10.9,10.76]; b0=[0.084,0.1436]; fun=inline(‘x./(b(1)*x+b(2))’,’b’,’x’); [beta,r,J]=nlinfit(x,y,fun,b0); beta y1=x./(0.0845*x+0.1125); plot(x,y,’*’,x,y1,’- or’) legend(‘原始数据‘,‘拟合曲线’) (其中b0的计算是根据已有的数据值带入方程1/y=a+b/x所得的,我们选取点(2,6.42)和(16,10.76)我们可得a=0.084,b=0.1436,及b0=[0.084,0.1436]。曲线拟合图如下所示: - 12 - 合肥师范学院2015届本科生毕业论文(设计) 由此我们还可以预测当x=17时y的值,只需要在上面的程序中输入代码: ypred=nlprdict(fun,17,beta,r,J)可以得到结果如图所示: 3.3一元回归建模实例 以下来自网上的一组数据是关于雏鹅龄重(y)与体重(x)的相关关系, 编1 2 3 4 5 6 7 8 9 10 号 x 85 87 96 94 127 102 96 82 124 104 y 2380 2460 2700 2480 3100 2680 2610 2380 3280 2900 (1)作散点图 x=[85 87 96 94 127 102 96 82 124 104]; y=[2380 2460 2700 2480 3100 2680 2610 2380 3280 2900]; plot(x,y,’*’) xlabel(‘x’) ylabel(‘y’) - 13 - 合肥师范学院2015届本科生毕业论文(设计) 由图可见,雏鹅的体重与龄重间存在线性关系,且龄重随雏鹅的体重的增大 而增大,因此我们可得出x与y呈一元线性回归模型。 (2)建立直线回归方程 ,,,在MATLAB中调用命令,从而求出参数的最小二乘估计,继而可在01MATLAB窗口中继续输入: n=size(x,1) [p,s]=polyfit(x,y,1); yl=polyval(p,x); hold on plot(x,y1) p 通过窗口可得输出结果: 即参数()的最小二乘估计为: ,,,,7677783193503.,. 01 所以雏鹅的体重与龄重的直线回归方程 ,yx,,7677783193503.. (3)误差估计与可觉系数 - 14 - 合肥师范学院2015届本科生毕业论文(设计) TSS=sum((y-mean(y)).^2) RSS=sum((y1-mean(y)).^2) ESS=sum((y-y1).^2) R2=RSS/TSS; 则通过编辑器得到输出结果: 这样可得可决系数R^2=0.9234,接近于1,因此模拟的拟和效果较好 。 4 多元线性回归模型 4.1多元线性回归初级分析 4.1.1多元回归基本概念 设Y是一个可观测的随机变量,它受到p(p>0)个非随机变量因素 „,和随机误差ε的影响。若Y与„,有如下线性关系: XX,XX,XX1212pp YXXX,,,,,,,,,,,...(4.1.1) 01122pp ,,,,,,,...,其中是固定的未知参数,称为回归系数;ε是均值为012p 2,,XX,0、方差为(>0)的随机变量;Y为称解释变量;„,称为解释变X12p量。模型(4.1.1)称为多元线性回归模型。 XX,由定义,在模型(4.1.1)中,自变量„,是非随机的且可精确观X12p测,随机误差ε代表其他随机因素对因变量Y产生的影响。 - 15 - 合肥师范学院2015届本科生毕业论文(设计) XXXy,,...,;对于总体(„,;Y)的n组观测值( )XX,Xiiipi1212p (i=1,2,„,n; n>p),应满足式(4.1.1),即 ,yxxx,,,,,,,,,,,...1011121211pp , yxxx,,,,,,,,,,,...,2012122222pp , ....,(4.2.2) ,yxxx,,,,,,,,,,,...nnnpnpn01122, 2,,,,,...,,其中相互独立,且设,N(0,,)(i=1,2,„,n),12ni ,,x,,,,,,,yxx1?,1p0111121,,,,,,,, x,yxx1?,,,,,,,,,2p1221222YX,,,,,,,,,,,,,,,,,????????记 ,,,,,,,, ,,,,,,,,,yxx1?,xpnnnn12,,,,np,,,, 则模型(4.2.2)可用矩阵形式表示为:Y=Xβ+ε 其中Y为观测向量;X为设计矩阵;β为待估计向量;ε是不可观测的维 2,随机变量,它的分量相互独立,假定ε,N(0, In)。 4.1.2建立多元线性回归建模的基本步骤 (1)对问题进行直观分析,选择因变量与解释变量,作出因变量与各解释变量 的散点图,初步设定多元线性回归模型的参数个数。 (,X),调用命令为: 2)输入因变量与自变量的观测数据(y [b,bint,r,rint,s]=regress(y,x,alpha) 计算参数的估计。 (3)调用命令rcoplot(r,rint),分析数据的异常点情况。 (4)作显著性检验,若通过,则对模型做预测。 (5)对模型进一步研究,如残差的正态性检验,残差的异方差检验,残差的自 相关性检验等。 - 16 - 合肥师范学院2015届本科生毕业论文(设计) 4.2 MATLAB的回归分析命令 4.2.1 多元回归建模命令 在MATLAB工具箱中,与多元回归模型有关的命令有多个,比如 (1)b=regress(Y,X) (2)[b,bint,r,rint,stats]=regress(Y,X) (3)[b,bint,r,rint,stats]=regress(Y,X,alpha) 三种方式的主要区别是输出项的参数的多少,第三种方式是全参数方 式,第三种说明regress命令的输入与输出参数的含义。 输入参数:输入量Y表示模型(3.1.1)中因变量的观测向量 T ;X是一个n*(p+1)的矩阵,其中第一列元全部是数“1”,(,,...,)yyy12n T(,,...,)xxxX第j列是自变量 的观测向量 (j=1,2,„,p),12jjnjj ,,x,,1yxx?1p11112,,,, x1yxx?,,2p,,22122,YX,,,,,,即: ??????,,,, ,,,,1yxx?xnnn12,,np,, 对于一元线性回归,取p=1即可;alpha为显著性水平。 输出参数:输出向量b为回归系数估计值,bint为回归系数的置信区间;输出向量r表示残差列向量,即 T (,,...,)yyyyyy,,,1122nn 输出量rint为模型的残差的置信区间;输出量stats是用于检验回归模型的统计量,有4个分量值:第一个是R^2,其中R是相关系数;第二个是F统计值;第三个是与统计量F对应的概率P,当P> A=[74.6 29.4 20.9 1085.6 76.6 30.5 21.2 1130.8 79.4 33.2 22.7 1239.6 75.6 29.2 21.2 1010.4 79.3 32.1 21.3 1274.7 81.4 27.4 21.5 1010.8 98.3 24.8 21.4 1092.5 67.7 23.6 21.0 826.3 74.1 32.7 22.1 1000.1 142.9 26.7 23.2 1543.2 87.2 44.7 23.1 1189.1 101.4 42.4 23.9 1415.1 113.7 39.2 22.7 1396.8 123.6 44.2 28.5 1542.7 135.2 50.6 23.7 1569.2 174.2 62.8 26.6 2269.8 151.3 62.6 25.8 2021.5 169.2 61.4 24.9 2212.4]; [m,n]=size(A); subplot(3,1,1),plot(A(:,1),A(:,4),'+'), xlabel('x1(库存金额)') ylabel('y(销售额)') subplot(3,1,2),plot(A(:,2),A(:,4),'*'), xlabel('x2(广告投入)') ylabel('y(销售额)') subplot(3,1,3),plot(A(:,3),A(:,4),'x'), xlabel('x3(员工工资)') ylabel('y(销售额)') 通过编辑器可得相关图形 - 19 - 合肥师范学院2015届本科生毕业论文(设计) 所得图形如上图所示,可以直接看到销售额y与资金额、广告投入,员工资金具有线性关系,因此可建立三元线性回归模型 yxxx,,,,,,,,,,0112233 接着调用命令regress,建立三元线性回归模型 x=[ones(m,1),A(:,1),A(:,2),A(:,3)]; y=A(:,4) [b,bint,r,rint,stats]=regress(y,x); b,bint,stats, 程序运行结果可得: - 20 - 合肥师范学院2015届本科生毕业论文(设计) ,,,~,,,输出结果可得,b就是模型中的参数因此可得多元线性回归0123 ,模型: yxxx,,,,,,,?,,,,?,,,,,12302651417..123 ,,,~,,,bint的各行分别为参数的95%的置信区间,stats的第一列表示0123 模型可决系数,第二列为F统计量的观测值,第三列得到概率p=0.0000,最后一列模型的残差平方和为9.6891.由于可决系数R^2=0.0010,p=0.0000<0.05,因此建立的回归模型有意义。 接着要检验,对所得图形进行改进,已知残差图形命令为rcoplot,其调用格式为:rcoplot(r,rint),其中,输入参数r,rint是多元回归建模命令regress输出的结果,运行该命令后展示了残差与置信区间的图形。该命令有助于对建立的模型进行分析,如果出现红色的点,则可认为是异常的点,那么此时可删除异常点,重新建模,最终得到改进的回归模型。那么在上面的图形加入rcoplot(r,rint)这样的程序于编辑器中,就可得到如下图形 从图中可以看出第五个点和第十五个点属于异常点,因此我们可以去掉这两个点,重新拟合得到更加符合散点图的曲线。 - 21 - 合肥师范学院2015届本科生毕业论文(设计) 实例2 某个大坝的发电耗水率的主要要影响为库水位,出库流量,现在从某一天的12时02分—14时08分范围内的出库流量、库水位对应的耗水率利用多元回归建立耗水量与出库流量、库水位的模型。 某一天的时间 库水位 出库流量 机组发电耗水率 12:02 65.04 15601 60.43 12:04 65.01 15529 60.13 12:06 65.09 15390 60.03 12:08 65.14 15370 58.27 12:10 65.19 15319 57.39 12:12 65.32 15468 58.14 12:14 65.34 15514 58.21 12:16 65.37 15512 58.23 12:18 65.39 15498 58.49 12:20 65.41 15397 58.51 14:02 65.47 15473 58.36 14:04 65.39 15416 58.07 14:06 65.58 16335 57.83 14:08 65.56 14687 56.69 14:10 65.07 14372 56.27 14:12 65.84 14192 55.77 首先编写程序,输入原始数据,如下: A=[65.04 15601 60.43 65.03 15529 60.13 65.09 15390 60.03 65.14 15370 58.27 65.19 15319 57.39 65.32 15468 58.14 65.34 15514 58.21 65.37 15512 58.23 65.39 15498 58.49 - 22 - 合肥师范学院2015届本科生毕业论文(设计) 65.41 15397 58.51 65.47 15473 58.36 65.39 15416 58.07 65.58 16335 57.83 65.56 14687 56.69 65.67 14372 56.27 65.84 14192 55.77] subplot(1,2,1),plot(A(:,1),A(:,3),‘+‘) xlabel(‘x1(库水位)’) ylabel (‘y1(耗水率)’) subplot(1,2,2),plot(A(:,2),A(:,3),‘o‘) xlabel (‘x2(出库流量)’) ylabel (‘y(耗水率)’) 运行该程序后可得到相应的散点图(见下图),可以看到无论库水位还是出 库流量都与机组发电耗水率具有线性关系,因此可建立机组发电耗水率与库水位 和出库流量的二元线性回归模型。 - 23 - 合肥师范学院2015届本科生毕业论文(设计) 接着建立相应的模型 [m,n]=size(A); y= A(:,3); x= A(:, 1:2); [b,bint,r,rint,stats]=regress(y,[ones(m,1),x]); 0b,bint,stats; 那么可得到回归系数估计值,回归系数置信区间 回归系数 回归系数估计值 回归系数置信区间 309.3475 [187.0359,431.6510] ,0 -4.0089 [-5.7768,-2.2409] ,1 0.0007 [-0.0001,0.0015] ,3 22s = 0,7964, F=25.4221, p< 0.0001 ,=0.3912 R ,yxx,,,?,,,,,,,,,,,?,00007.12 将模型进行改进 rcoplot(r,rint); - 24 - 合肥师范学院2015届本科生毕业论文(设计) 此时找出异常点,寻找原因,删除异常点即可。 5 GUI界面的设计 5.1 GUI界面的介绍 图形用户界面(GUI)为用户和程序提供了良好的交互方式,用户通过鼠标,键盘等简单的输入设备即可与计算机复杂的程序文件进行交互处理。Matlab提供了良好的图形用户界面设计平台,可以设置基本的图形窗口的对象(菜单,按钮,文本框,单选框,复选框等);可以设置对用户不同操作的响应;可以方便的对界面布局管理。 5.2 GUI的设计流程 不管使用何种方式设计GUI界面,一般都要遵从以下的流程 (1):首先应该明确界面设计的总体要求,合理构思界面布局。 (2):按照界面设计的总体要求,合理构思界面的布局,可在纸上先绘制草图,确定界面衔接。 (3):在Matlab中设计图形的界面,设计相应对象的参数并力图使设计图形界面简洁,易操作。 (4):为图形界面上控制程序执行的按钮,编写相应的回调函数。 (5):调试GUI界面的执行。 5.3 基本的GUI设计界面 5.3.1 GUI界面的特点 简洁性, 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 性,合理性,人性化。 5.3.2 基本的界面图 基本的GUI设计界面如下: - 25 - 合肥师范学院2015届本科生毕业论文(设计) 设计界面包括菜单栏(“View”菜单项,“Layout”菜单项,“Tools”菜单 - 26 - 合肥师范学院2015届本科生毕业论文(设计) 项),工具栏(布局编辑器,菜单编辑器,Tab顺序编辑器,属性查看器,用于执行GUI文件),控件工具箱(含有静态文本框,可编辑文本框,列表框,滚动条,按钮组,坐标轴,面板等控件对象),GUI设计区。 5.2 实例的GUI设计 针对文章中的四个例子我们做了四个GUI设计,即非线性,线性,多元四 个例子。每个GUI中包含一个.Fig文件和一个.m文件。GUI设计中包含了数 据显示,按钮,绘图,文字编辑等功能。可以清楚地看到图形的各相关信息。 (1):非线性实例的GUI设计: (2):一元线性实例的GUI设计: - 27 - 合肥师范学院2015届本科生毕业论文(设计) (3):多元线性实例的GUI设计: (4):多元线性GUI实例的GUI设计: - 28 - 合肥师范学院2015届本科生毕业论文(设计) - 29 - 合肥师范学院2015届本科生毕业论文(设计) 结 论 对于这份毕业课题的论文研究,我感触到了很多大学里从未所涉及的领域,从对MATLAB一无所知到半知不解到知道大概,感觉到了学习是一个逐渐的过程,知识在脑海里一遍遍过滤到据为己有,那种收获的喜悦还是让我对学习充满了动力,接下来我想谈谈我做完这篇课题的收获。 在MATLAB软件语言学习中,我知道了如何调用命令去表达方程,如何将数据更清晰的表达,以及表达它们的相关关系,根据对数据特性的了解和MATLAB基本知识的掌握,明白数据如何在MATLAB中完整表达,从最简单的一元线性回归分析到一元非线性回归分析再到多元线性回归分析,从建模寻找到相应的散点图,看它们的图形是否可以建立相应的回归模型,再调用命令建立多元回归模型,找出模型中相应的参数,根据置信区间和可决系数判别,看建立的回归模型是否有意义,最后是多元回归辅助图形命令,删除异常点,并对模型进行改进。 本课题研究可以通过MATLAB软件平台逐一实现,要掌握三大调用命令,polyfit(一元回归),regress(多元回归),nlinfit(非线性回归),对一元,多元线性及非线性的未知参数的估计方法以及对估计后的模型预报做出研究。根据已得的实验结果以及以往的经验来建立统计模型,并研究变量之间的相关关系,建立起变量之间关系的近似表达式,并由此对相应的变量进行预测和控制等。 - 30 - 合肥师范学院2015届本科生毕业论文(设计) 参考文献 [1]何晓群,多元统计分析[M].北京:中国人民大学出版社,2004. [2]张尧庭,方开泰.多元统计分析引论[M].北京:科学出版社,1999. [3]James M Lattin ,J Douglas Carroll,Paul E Green.多元数据分析[M].英文版.北京:机械工业出版社,2003. [4]张立军,任英华。多元统计分析实验[M].北京:国防工业出版社,2007 [5]王岩,隋思涟,王爱青.数理统计与MATLAB工程数据分析[M].北京:清华大学出版社,2006. [6]邓留宝,李博年,杨桂元.MATLAB与金融分析[M].合肥:合肥工业大学出版社,2007. [7]何晓群,刘文卿。应用回归分析[M].北京:中国人民大学出版社,2001. [8]郑阿奇,曹戈.MATLAB实用教程[M].2版。北京:电子工业出版社,2007. - 31 - 合肥师范学院2015届本科生毕业论文(设计) 附 录 (1):相关图形 y=a*x^b的图形(取a=6,b=0.5,1,2) >> x=0:0.5:4; y=6*power(x,2); xlabel('x'); ylabel('y'); hold on plot(x,y); hold on z=6*power(x,0.5); plot(x,z); hold on s=6*x; plot(x,s); y=a*x^b(取a=2,b=-2,-0.5,-1) >> x=0:0.2:2; - 32 - 合肥师范学院2015届本科生毕业论文(设计) y=2*power(x,-2); xlabel('x'); ylabel('y'); hold on plot(x,y); hold on z=2*power(x,-0.5); plot(x,z); hold on s=2./x; plot(x,s); y=a*e^(b*x)(取a=2,b=2,-2) x=-2:0.1:4; ylim([-2,6]); hold on - 33 - 合肥师范学院2015届本科生毕业论文(设计) xlabel('x'); ylabel('y'); hold on y=2*exp(2*x); plot(x,y); hold on z=2*exp(-2*x); plot(x,z); y=a*e^(b/x)(取a=2,b=2,-2) >> x=0:1:10; y=2*exp(2./x); xlabel('x'); ylabel('y'); hold on plot(x,y) - 34 - 合肥师范学院2015届本科生毕业论文(设计) x=0:1:10; y=2*exp(-2./x); xlabel('x'); ylabel('y'); hold on plot(x,y); - 35 - 合肥师范学院2015届本科生毕业论文(设计) 致谢 这次毕业设计得到了很多人的帮助,其中尹静老师对我的关心和支持尤为重要,每次遇到难题,我首先想到的就是向尹老师寻求帮助。另外,他严谨的作风使我的论文即使在谨小细微处也给予了纠正,让我的论文无论是结构还是内容变得更加公整、紧凑,感谢尹老师对我的悉心指导。 感谢校方给予我这样一次机会,能够独立地完成这样一个设计,作为检验这些年来学习的成果,在这个过程当中,学校给予我们各种方便,使我们在即将离校的最后一段时间里,能够更多学习一些实践应用知识,增强了我们实践操作和动手应用能力,提高了独立思考的能力。再一次对我的母校表示感谢。 感谢在整个毕业设计期间和我密切合作的11级同学,和曾经在各个方面给予过我帮助的伙伴们,正是因为有了你们的帮助,才让我不仅学到了本次课题所涉及的新知识,更让我学习到了知识以外的东西。 - 36 -
本文档为【基于Matlab的数据多元回归分析的研究】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_654168
暂无简介~
格式:doc
大小:392KB
软件:Word
页数:43
分类:生活休闲
上传时间:2017-10-07
浏览量:175