R语言与回归分析几个假设的检验

本文探讨了R语言中线性回归的几个关键假设,包括完全共线性、样本的随机抽样性、误差的条件均值为0、同方差性和线性性。针对这些假设,介绍了如何通过数据和统计方法进行检验,如通过残差独立性检测的Durbin-Watson检验,以及检测异方差性的Breusch-Pagan检验和Newey-West检验。此外,还提到了线性性假设的检验方法和一些相关的R包及函数应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、从线性回归的假设说起

        对于线性回归而言,若要求回归估计有一些良好性质比如无偏性,就需要加上一些假定条件。比如要达到估计的无偏性,我们通常需要加上高斯-马尔科夫条件:

A1、对参数而言的线性性

A2、样本的随机抽样性

A3、误差的条件均值为0

A4、不存在完全共线性

A5、同方差假设

       在上述条件上加上误差项服从正态分布,就得到了经典线性回归模型的6大假定。保证了估计的良好性质。

      现在我们来考虑一下这几个条件,它们真的十分容易达到吗?

       我们先从比较容易满足的的假设A4入手分析:完全共线性导致的结果是最小二乘的结果不唯一。所以这里要求的是数据相关性不能为1,但并不是不能有相关性。导致完全共线性的原因不外乎以下三个:1、错误的将一系列已建立线性关系的因变量包括在处理的数据中(但其实这个的相关度还是达不到1的,但是会影响到回归的效果,更加会影响到你的解释)2、处理虚拟变量不当导致的错误。用r个虚拟变量表示离散变量取值时,多重共线性在所难免(这个是真正的完全共线性,因为离散变量表达了所有的情况)3、样本量过小导致的无法识别。这个也只能增加样本量来解决问题。

       再来看A2,这个我们通过数据收集方式的先验知识来判断最优,我们不知道是也可以通过残差的独立性来看,在R的car包中提供了一个可做独立性检测(durbin-watson检验)的函数durbinWatsonTest()。该检验适用于时间独立数据,对于非聚集型数据并不适用。

       看A3说的是误差项里不包括自变量的任何信息,这个在作解释是十分重要的。也可以证明均值为0的条件总是可以达到的,通过适当变换。

      A1、A5就没有那么容易达到。虽然他们对无偏性的影响并不大,最小二乘的估计量仍是无偏且一致的(相合的),但是有效性时会受到影响的。

      那么,我们现在的问题就是如何判定这两个假定成立?

 

二、异方差的线性回归
        关于异方差我们必须注意到这样一个事实:即便误差具有一致的方差,最小二乘残差仍有不等的方差。我们可以通过对学生残差(主要是排除一些异常值,让数据平稳一些)根据拟合值绘制散点图来辨别之。当然我们也有统计的办法如Breusch-Pagan检验

      在R中,扩展包lmtest中的Breusch-Pagan检验。或者利用car包中的ncv.test()函数。二者工作的原理都是相同的。在回归之后,我们可以对拟合的模型采用bptest()函数

unrestricted<-lm(z~x)

bptest(unrestricted)

      这将得到检验的“学生化的”(studentized)结果。如果为了保持与其他软件结论的一致性(包括ncv.test()),我们可以设置studentize=FALSE

我们来看一个例子:以下数据取自伍德里奇的《计量经济学导论》均保留原数据名

library(foreign)

B<-read.dta("D:/R/data/SAVING.dta")#导入数据

library(lmtest)

result2<-lm(sav~inc+size+educ+age+black,data=B)

bptest(result2)

        studentized Breusch-Pagan test

data:  result2

BP =5.5756, df = 5, p-value = 0.3497 #从这里看得出数据是不具有异方差性的

 

C<-read.dta("D:/R/data/SMOK

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值