matlab矩阵论文,回归函数论文,关于基于Matlab矩阵运算的多元回归函数编程相关参考文献资料-免费论文范文...

导读:本论文是一篇免费优秀的关于回归函数论文范文资料,可用于相关论文写作参考。

邬汝威

(浙江工商大学国际经济与贸易系,浙江杭州310018)

摘 要:多元线性回归是计量分析中最常用的方法之一,在经济学、金融学和管理学中运用广泛.线性回归方法依赖于矩阵和向量的运算,因此以矩阵运算为内核的Matlab是理想的编程平台.本文以开发多元线性回归函数作为例子,着重分析Matlab自定义函数的设计理念,同时突出varargin、nargin等特殊函数的代码编写.通过交叉运用线性代数、概率统计等数学工具,本文为计量研究人员提供了新的编程视角.

关键词:矩阵运算;Matlab;多元线性回归;函数编程

中图分类号:TP311.1文献标识码:A

1.引言(Introduction)

普通最小二乘法(OrdinaryLeastSquare,以下简称OLS)是最重要的多元线性回归法,该方法被广泛地应用于各种定量分析领域[1].目前,许多主流计量分析软件都支持OLS回归法,比如SAS、R、Eviews等.Matlab也能够实现多元线性回归,其自带的StatisticsToolbox和EconometricsToolbox提供了比较丰富的计量分析功能.既然有现成的回归分析软件,为什么还要自己编写原始代码?原因有以下两点.第一,计量经济学的发展是日新月异的,上述主流回归分析软件的更新无法跟上计量经济学的前进步伐.通过对原始代码的详细分解,能够让广大研究人员掌握回归分析的核心编程思路.第二,计量经济学的难点在于线性代数和概率统计,在实践中学习是掌握各种计量工具的关键.通过编程,有利于更好地吸收回归分析知识.

多元线性回归的代码设计包括数据储存、矩阵运算、结果输出等环节.本文先从Matlab自定义函数编程出发,利用varargin、nargin等特殊函数处理变量数据.之后利用Matlab强大的矩阵运算功能得到回归分析统计量,并将回归结果以表格形式输出.目前,国内有少量的文献涉及Matlab计量编程,这些研究存在一些可改进之处.首先,回归方程的变量数目应该由用户自定义.在计量经济学的实际应用中,控制变量的筛选是不确定的.借助Matlab内置的varargin、nargin等函数,本文的程序能够有效地处理多个解释变量,即可以实现变量数目的自定义.其次,回归结果应该给出完整的统计量,不应该仅仅提供系数大小.本文的Matlab程序给出了回归系数、标准误、P值等统计量,符合计量分析的学术标准.再次,回归结果可以用表格形式输出.Matlab的内置table函数提供了丰富的输出选项,在多元回归的情况下可以用table函数批量地输出各种统计量.

2.线性回归法的理论回顾(Reviewoflinearregression)

用表示被解释变量,表示自变量,表示干扰项,那么总体线性方程可以表示为[2]:

2c2b0d696e7354198caf9eb75ba5c223.png

用表示被解释变量的向量形式,表示自变量的矩阵形式,表示样本容量,我们可以得到回归系数:

8a34250dc7df942d58915d55d0eddc1d.png

在同方差条件下,显著性检验所需的标准误可以由下式计算得到[3]:

e9c34d5960a6d63a2bde6f7066d6c6b2.png

3.常用的内置函数(Essentialbuilt-infunctions)

为了构建完整的多元计量分析程序,我们将代码分为多个模块.一个完整的计量分析程序可以被分为三个模块,数理统计模块、矩阵运算模块和结果输出模块.数理统计模块是回归参数检验的重要部分,我们需要借助Matlab内置的数学函数来计算各种统计量.矩阵运算是Matlab的强项[3],在求回归参数时需要用到diag函数.输出模块也非常关键,内置的table函数能够使回归结果以简洁的表格形式输出.在正式编写回归分析程序之前,我们先回顾一下将要涉及的Matlab内置函数.

3..1用于显著性检验的tcdf函数

在计量分析中t分布具有重要作用,t分布可以用来检验某个解释变量的显著性.为了得到P值,我们需要计算t统计量.假定某个自变量的系数为,那么该变量的t统计量计算公式为

线性回归函数:【Fx宋茜吧】110428 MCD 函数回归后台完整版

ec9ae000bb0cf9a1cdf6a47ce58848c0.png

,其中表示解释变量的标准误.利用Matlab内置的tcdf函数,我们可以得到任意自由度的t统计量.比如,某个变量的t值为-2.39,自由度为296,那么求相应P值的代码为(这里还用到了求绝对值的abs函数):

pValue等于(1-tcdf(abs(-2.39),296))*2

3..2矩阵运算与diag函数

多元回归方法涉及大量的矩阵运算,因此我们可以借助Matlab进行与矩阵相关的操作.比如,先用ones内置函数构造一个元素全为1的5×5矩阵,将该矩阵命名为mat1.再将该矩阵与其转置矩阵相乘,将得到的新矩阵命名为mat2.利用Matlab内置的diag函数,我们可以很快地得到矩阵mat2主对角线上的所有元素.上述过程的代码如下:

mat1等于ones(5,5)

mat2等于mat1*mat1&amp,acute,

diag(mat1)

3..3用于生成表格的table函数

回顾国内已有的Matlab学术文献,一些学者采用文本对话框的形式输出计量回归结果.但是,在回归统计量数目极多的情况下,文本对话框无法像表格那样简洁地显示层次化信息.Matlab提供了强大的表格输出命令,通过内置的table函数我们可以很轻松地得到专业化的表格效果.假设有两个变量var1和var1,其中var1的取值为21和11,var2的取值为35和51.如果用table函数来实现var1和var2数据的表格形式输出,可以编写以下代码:

table([21,11],[35,51],...

&amp,acute,VariableNames&amp,acute,,{&amp,acute,var1&amp,acute,&amp,acute,var2&amp,acute,})

4.Matlab代码设计(Matlabcodedesign)

4..1自定义函数的开头

将这个Matlab多元线性回归程序命名为mvReg,因此将函数源代码以mvReg.m作为文件名保存.为了使该程序能够灵活处理多元线性回归的自变量数目,我们使用varargin函数记录输入的因变量和自变量.代码如下:

functionmvReg(varargin)

4..2回归系数的估计

由第二部分理论回归可知,回归系数的表达式可以简化为

0f2925fba7c3fe27870fdb9cb8279e54.png

.首先,生成元素全为1的矩阵MatX.其次,用循环语句将矩阵MatX的元素替换为varargin中的数据.求回归系数的代码如下:

NumIV等于nargin,

NumCross等于length(varargin{1}),

VecY等于varargin{1},

MatX等于ones(NumCross,NumIV),

fori等于2:NumIV

MatX(:,i)等于varargin{i},

end

VecB等于inv(MatX&amp,acute,*MatX)*MatX&amp,acute,*VecY,

4..3显著性检验的统计量

在回归分析当中,比较重要的统计量有t值、标准误和P值等.t值等于回归系数与标准的比值,表达式为.P值根据t分布得到,极小的P值表明不拒绝原假设“”.用VecSE、VecT和VecP分别表示标准误向量、t值向量和P值向量,计算各统计量的代码如下:

ehat等于VecY-MatX*VecB,

VecSE等于[diag(sum(ehat.^2)/等

(NumCross-NumIV)*inv(MatX&amp,acute,等

*MatX))].^0.5,

VecT等于VecB./VecSE,

VecP等于(1-tcdf(abs(VecT),等

NumCross-NumIV))*2,

4..4将回归结果以表格形式输出

Matlab的内置函数table提供了强大的表格显示功能,因此本回归程序利用table函数来实现回归结果的输出.由于回归结果的表格涉及文本内容和数值内容,我们将数据以cell形式储存.代码如下:

VecVN等于cell(nargin,1),

VecVN{1,1}等于&amp,acute,_cons&amp,acute,,

fori等于2:nargin

VecVN{i,1}等于inputname(i),

end

Regression等于table(VecVN,VecB,等

VecSE,VecP,&amp,acute,VariableNames&amp,acute,,等

{&amp,acute,Variable&amp,acute,,&amp,acute,Coef&amp,acute,,&amp,acute,Std_Err&amp,acute,,&amp,acute,P&amp,acute,})

至此代码编写完毕,接下来对多元回归函数进行测试.先导入Excel数据文件,因变量为wage,自变量为educ和exper.多元回归的代码为:

mvReg(wage,educ,exper)

最终的回归结果如图1所示.输出结果的第一列为被估计的回归系数,解释变量educ的系数大小为0.64427,标准误为0.053.通过计算t统计量,我们可以得到其P值为0.所以,解释变量educ是非常统计性显著的.同理,解释变量exper的系数大小为0.070095,标准误为0.010978.该变量P值小数点的后三位都为零,因此变量exper在1%水平上统计性显著.参照主流统计软件的输出格式,我们用“_cons”表示截距.从图1的回归结果来看,截距P值小数点的后三位都为零,因此也是在1%水平上统计性显著.

466876cf30344aa0635ed50d2aec4869.png

在得到多元线性回归的结果之后,我们还可以利用内置函数来实现数据可视化的功能.在单个解释变量的情况下,scatter函数可以得到关于因变量与被解释变量的散点图.借助plot函数,还可以画出线性回归的拟合曲线.借助基本的数理统计知识,用户可以将这些图形功能充分应用到数据分析当中.值得注意的是,Matlab提供了大量的高级统计函数.基于这些内置函数,用户可以非常高效地编写属于自己的新程序.

5.结论(Conclusion)

Matlab作为以矩阵运算为特点的综合性编程平台,其高效快捷的代码命令能够处理众多的计量分析难题.本文借助Matlab线性代数模块、概率分布模块实现了多元线性回归法,并得到了重要的检验统计量.在此基础上,可以进一步增加更高级的计量分析功能,比如异方差稳健回归、多重共线性检验等.

参考文献(References)

[1]EricNoreen.AnEmpiricalComparisonofProbitandOLS

RegressionHypothesisTests.JournalOfAccountingResearch,

1.988,26(1):119-133.

[2]SanfordWeisberg.AppliedLinearRegression[M].JohnWiley

&amp,Sons,2013.

[3]D论文范文idThomas.GiveMeaningtoMatriceswithMATLAB[J].

JournalofComputersinMathematicsandScienceTeaching,

1.990,9(3):73-85.

作者简介:

邬汝威(1988-),男,硕士生.研究领域:算法设计,面板数据

分析.

回归函数范文

线性回归函数参考文献总结:

适合不知如何写回归函数方面的相关专业大学硕士和本科毕业论文以及关于回归函数论文开题报告范文和相关职称论文写作参考文献资料下载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值