多元线性回归分析(Stata)

目录

一、回归分析的介绍与分类

二、多元线性回归模型的条件

1. 线性理解与内生性问题研究

2. 异方差问题

3. 多重共线性问题


一、回归分析的介绍与分类

回归分析的任务是:通过研究自变量X和因变量Y的关系,尝试去解释Y的形成机制,进而达到通过X去预测Y的目的

三个关键字:相关性、因变量Y、自变量X

常见的回归分析有五类(划分的依据是因变量Y的类型):

  • 线性回归:因变量Y为连续性数值变量,例如GDP的增长率

  • 0-1回归:因变量Y为0-1型变量,例如P2P公司研究借款人是否能按时还贷,那么Y可以设计为二值变量,Y=0时代表可以还贷,Y=1时代表不能还贷

  • 定序回归:因变量Y为定序变量 ,例如1表示不喜欢,2表示一般般,3表示喜欢

  • 计数回归:因变量Y为计数变量,例如管理学中的RFM模型,F代表一定时间内,客户到访的次数,次数其实就是一个非负整数

  • 生存回归:因变量Y为生存变量(截断数据),例如研究产品寿命,企业寿命和人的寿命,假设做吸烟对寿命的影响,选取的样本中老王60岁,但是老王此时身体很健康 ,不能等老王去世再做研究,所以只能记他的寿命为60+,这种数据就是截断的数据

回归分析的使命

  1. 识别重要变量,那些自变量X是同Y真的相关

  2. 判断相关性的方向,正相关还是反相关

  3. 要估计权重

回归分析的分类

数据的分类

  • 横截面数据:在某一时点收集的不同对象的数据,eg:全国各省份2021年GDP数据

  • 时间序列数据:在同一对象在不同时间连续观察所得的数据,eg:某地方每隔一小时测得的温度数据

  • 面板数据:横截面数据和时间序列数据综合在一起的一种数据

二、多元线性回归模型的条件

  • 模型符合线性模式

  • X满秩(无多重共线性)

  • 零均值价值 E(ξi​∣Xi​)=0 (自变量外生)无内生性问题

  • 同方差:Var(ξi​∣Xi​)=σ

  • 无自相关:Cov(ξi​,Xi​)=0

1. 线性理解与内生性问题研究

回归分析中对线性的理解

回归分析中的线性假定并不要求初始模型都呈严格的线性关系,自变量和因变量可以通过变量替换来转换成线性模型

例如:

标准化回归系数

我们通常得到的回归方程中的回归系数都是非标准化回归系数,表示的是在其他自变量不变的时候,该系数对应的自变量每增加一个单位的量,因变量就增加该系数的值,体现的是对因变量绝对的影响,并不能去判断不同自变量之间谁对因变量的影响大;而标准化回归系数就是指对数据进行标准化处理

标准化处理:讲原始数据减去它的均数后除以它的标准差,计算得到新的变量值,消除了量纲、数量级等差异的影响

标准化处理后得到的回归方程即为标准化回归方程,使得不同变量间具有可变性,标准回归系数的绝对值越大即对因变量的影响最大(只关注显著的回归系数)

stata操作:在regress 后添加参数b

regress y x1 x2 ... xk, b

对数据进行描述性统计的方法

  • excel数据分析

  • stata-summarize

Stata工具的使用

  1. 数据的描述性统计

    • 定量数据:summarize 变量1 变量2 ...

    • 定性数据:tabulate 变量名, (gen(A))

      返回对应这个变量的频率分布表,可选择并生成对应的虚拟变量(以A开头)

      虚拟变量是针对定性数据而设置的特殊变量详细解释看Chapter7

  2. 回归分析

    regression y x1 x2 ... xk(默认采用的是OLS普通最小二乘法)

利用Stata对数据进行回归分析的注意点

解释

  1. 上表格第一行依次为SS(sum of squares),df(degree of freedom),MS(mean square)

  2. 右边的F(df of model, df of residual) = MS of Model / MS of Residual = 7.7543e+10/5.1386e+9 = 15.09

  3. F值的H0假设是:所有的自变量predictor都对y不会产生影响,即所有predictor的coef都=0,所有的predictor都不significant

  4. 下面的prob > F是指上述H0成立的可能性。当其趋于0时表示至少会有一些predictor的coef不为0(即相关)——模型合理

  5. Adj R-squared 由于R2存在一个问题:无论什么predictor加到模型中,R2都会变大。为了避免这个问题,adjR2惩罚了模型的复杂度

  6. 下面这张表格的第一列为coef回归系数

  7. 第二列为Coef的Std.Err,值越小说明Coef的值越可信

  8. 第三列t值=Coef / Std.Err,|t-statistics| > 2对应的predictor就是significant

  9. 第三列是p > |t|,表示prob > |t|,值小于0.05一般就是significant

核心关注点

模型是否合理:联合显著性检验,如果P值<0.05说明存在相关性,否则不存在

置信度高低(系数显著与否):如果P值(蓝色)<0.1说明置信度>90%,<0.05说明置信度大于95%,Regession coeffient显著

2. 异方差问题

第一张为同方差:生成的线性模型到每个数据的垂直水平距离相差无几就是同方差; 后面三张即为不同类型的异方差

异方差的检验

  1. 残差图检验(应该是稳定的平行于X轴) Stata中的操作:

    • rvfplot (画残差与拟合值的散点图)

    • rvpplot x (画残差与自变量X的散点图)

  2. 怀特检验(white检验) Stata中的操作: 

    estat imtest, white

        怀特检验的原假设:不存在异方差         若p值<0.05说明在置信度95%以上认为原假设不成立

异方差的纠正

  1. OLS+稳健的标准差

    如果发现存在异方差,一 种处理方法是,仍然进行OLS 回归,但使用稳健标准误。这是最简单,也是目前通用的方法。只要样本容量较大,即使在异方差的情况下,若使用稳健标准误,则所 有参数估计、假设检验均可照常进行。换言之,只要使用了稳健标准误,就可以与异方差“和平共处”了。

    Stata的操作: 

    regress y x1 x2 ... xk, robust
  2. 广义最小二乘法GLS

Stock and Watson (2011)推荐,在大多数情况下应该使用“OLS + 稳健标准误”

3. 多重共线性问题

表现:

  • 系数估计值符号相反

  • 某些重要的解释变量t值低但是R2不低

  • 当一不太重要的解释变量被删除后,回归结果显著变化

原因

  • 某一解释遍历可以由其他解释变量线性表示

  • 解释变量享有共同的时间趋势

  • 由于数据收集的基础不够宽,某些解释变量可能会一起变动

  • 一个解释变量是另一个的滞后,二者往往遵循一个趋势

检验(VIF)

Stata操作: 

estat vif

Soution

逐步回归分析

较好在生成线性模型时就能避免多重共线性问题

  • 向前逐步回归Forward selection:将自变量逐个引入模型,每引入一个后都要进行检验,显著时才加入回归模型 
    缺点:随着以后的自变量的引入,原来显著的自变量也可能变成不显著
  • 向后逐步回归Backward elimination:与向前逐步回归相反,先将所有自变量添加,之后一个个地尝试将自变量从模型中剔除,看整个模型解释因变量的变异是否有显著变化,之后将最没有解释力的剔除,不断迭代,直到没有需要被剔除的

Stata操作:

Forward selection:

stepwise regress y x1 x2 ... xk, pe(#1)

pe(#1) specifies the significance level for addition to the model; terms with p<#1 are eligible for addition(eg#1=0.05,当p值小于0.05时,认为显著,才可以被添加到模型中)

Backward elimination:

stepwise regress y x1 x2 .. xk, pr(#2)

pr(#2) specifies thr significance level for removal from the model; terms with p>#2 are eligible for removal(eg#2=0.75,当p值大于0.75时,认为不显著,剔除模型)

注意:在stata中,只有regress才会自动排除完全多重共线性,而采用逐步回归stepwise regress则不会,所以需要手动剔除掉造成完全多重共线性的自变量;可以在后面添加参加b和r,即标准化回归系数或稳健标准误

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/28222.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文轻松看懂线性回归分析的交互作用!

作者&#xff1a;丁点helper 来源&#xff1a;丁点帮你 前几天的文章&#xff0c;我们聚焦在回归分析&#xff0c;今天来看看在回归分析中常常要研究的一类难点问题——交互作用的探究。 交互&#xff08;interaction&#xff09;&#xff0c;字面上不太好理解&#xff0c;但…

多元线性回归模型及stata实现:总论

多元线性回归模型及stata实现&#xff1a;总论 一、模型 Yβ0β1X1β2X2⋯βnXne Y: Dependent variable&#xff08;因变量、应变量、反应变量、响应变量、被解释变量等&#xff09;X1、X2⋯Xn&#xff1a;Independent variable&#xff08;自变量、解释变量、控制变量&…

Linux 系统使用 git 提交代码-- git 的安装及使用(简明教学指南)

序 2023/02/09 晚 鉴于本篇文章收藏量比较多&#xff0c;那就给大家分享点在实际工作中使用频率最高的工作流命令吧。 场景如下(多人共同开发一个项目)&#xff1a;我叫小明&#xff0c;参与了一个名为 chatGPT 的项目&#xff0c;这个 AI 最近很火&#xff0c;就以此作为例…

慕课前端售1299元的面试题【第二阶段】汇总 day05

上一篇链接 如果有看不懂的&#xff0c;别硬看&#xff0c;直接chatgpt&#xff0c;让它回答。 - 我的博客需要缩宽页面观看&#xff0c;图片无法均放&#xff0c;很抱歉。 1. 请说明 Ajax Fetch Axios 三者的区别&#xff1f; 1. 用 XMLHttpRequest 实现 Ajax function aja…

Javaweb复习之HTTPTomcatServelet

1.Web概述 1.1 Web和JavaWeb的概念 Web是全球广域网&#xff0c;也称为万维网(www)&#xff0c;能够通过浏览器访问的网站。 JavaWeb就是用Java技术来解决相关web互联网领域的技术栈 1.2 JavaWeb技术栈 B/S 架构&#xff1a;Browser/Server&#xff0c;浏览器/服务器 架构模…

DDD领域驱动设计实战-DDD微服务代码结构

更多内容关注微信公众号&#xff1a;fullstack888 DDD并没有给出标准的代码模型&#xff0c;不同的人可能会有不同理解。按DDD分层架构的分层职责定义&#xff0c;在代码模型里分别为用户接口层、应用层、领域层和基础层&#xff0c;建立了 interfaces、application、domain 和…

windows10环境下安装docker、Ubuntu、gitlab、wsl2

一、概述 By星年 文章参考 常用命令参考&#xff1a;(为了方便复制命令都做了换行处理&#xff0c;可直接双击复制。) 进docker terminal&#xff1a; docker exec -it gitlab /bin/bash 查看容器列表&#xff1a; docker ps -a 查看镜像列表&#xff1a; docker images git…

AIGC的发展史:从模仿到创造,AI的创造性探索

在 AI时代&#xff0c;人工智能不再是简单的机器&#xff0c;而是一个具有无限创造力的创造者。AIGC的诞生是人工智能从模仿到创造的一种进步&#xff0c;也是对人类创造力的一种新探索。 而这种由AI生成的内容究竟是如何发展而来的呢&#xff1f;在本文中&#xff0c;我们将探…

如何解决微信支付回调:支付成功及支付失败都不进行任何操作(支付坑)

这几天都在用微信支付这块功能&#xff0c;不得不吐槽一下微信支付的小坑 关于微信提供JSAPI文档&#xff0c;本来想着他们写的开发文档&#xff0c;肯定是没有任何问题。 结果在开发测试中&#xff0c;支付完成后或者支付失败都没任何效果。 我已经在JS里面做了跳转&#xff0…

android微信支付返回-1,支付失败总结!

解决办法1&#xff1a;看看二次生成sign的参数顺序是否跟我发的一致&#xff01;很坑爹&#xff0c;必须一样才行&#xff01; 解决办法2&#xff1a;请求得到prepayid参数的url必须是图中的Url

微信支付下载对账单400Bad Request问题解决方式

今天在做项目时, 需要用到微信支付的对账接口, 看了好多人的反馈, 加上自己的测试, 在用API V3生成了Sign后,对download_url进行Get请求访问时, 依然会出现问题, 就是Nginx报错400 Bad Request 看了好多人的文章, 基本上都是用的调用sdk生成的httpClient再次进行调用, 如下图 …

微信支付异常(“应答的微信支付签名验证失败“)记录

原因是&#xff1a; 配置错了“微信支付平台证书”&#xff1b; 如何解决&#xff1a; 1.下载 微信支付平台证书下载工具(Certificate Downloader)https://github.com/wechatpay-apiv3/CertificateDownloader 得到 CertificateDownloader-1.1.jar 2.执行命令 java -jar Cer…

postman-模拟上传图片

一、Chrome打开layui : 图片上传 右键打开检查&#xff0c;选择network&#xff0c;上传图片查看到&#xff1a; 二、postman测试 打开postman先设置post&#xff0c;并将url填好 : https://httpbin.org/post 选择form-data&#xff1a;添加key/value : key为与后台约定字段(一…

【苹果群发iMessage推送位置推】软件安装将会按照 Developer Program License Agreement

推荐内容IMESSGAE相关 作者推荐内容iMessage苹果推软件 *** 点击即可查看作者要求内容信息作者推荐内容1.家庭推内容 *** 点击即可查看作者要求内容信息作者推荐内容2.相册推 *** 点击即可查看作者要求内容信息作者推荐内容3.日历推 *** 点击即可查看作者要求内容信息作者推荐…

风辞远的科技茶屋:可怖的AI

大家好&#xff0c;我是脑极体的风辞远。一直以来我们都在写大块文章&#xff0c;很少有机会跟大家聊天。时间长了&#xff0c;总觉得这种方式有一点冷漠感&#xff0c;不够轻松&#xff0c;加上往往每篇文章只聚焦一个话题&#xff0c;而我们产能有限&#xff0c;就会有很多值…

千万别再乱点黄色APP了!

上一篇&#xff1a;文心一言员工跳槽工资翻倍&#xff0c;猎头&#xff1a;百万年薪很正常 网络诈骗千千万&#xff0c;涉黄APP占一半。 小伙来自山东菏泽&#xff0c;失手在手机上下载了非法的涉黄APP&#xff0c;当他准备观看视频时发现&#xff0c;需要充值成为会员或完成任…

如何分析系统平均负载过高?

文章目录 前言uptime命令平均负载平均负载到底是多少才合理平均负载和CPU的关系CPU与进程1比1&#xff0c;CPU使用率高导致负载变高I/O高&#xff0c;导致负载高进程数超过CPU数&#xff0c;导致负载高 前言 我相信你应该用过uptime命令查询系统负载的情况&#xff0c;或者在各…

线上负载过高排查(top/vmstat/ifstat/free/df)

目录 一、五大命令 二、故障排查步骤 1、top命令找出CPU占比最高的 2、ps -ef 或者 jps -l进一步定位 3、ps -mp位到具体线程或者代码 4、jstack精准定位到错误的地方 本文通过学习&#xff1a;周阳老师-尚硅谷Java大厂面试题第二季 总结的LinuxJDK命令操作相关的笔记 一…

解决Linux 负载过高问题过程记录

解决问题的思路 1.top命令查看该机器的负载状况 2.cd /proc/pid 查看对应高占用程序的位置 3.进入对应程序中查看日志&#xff0c;根据CPU和内存这两个因素分析 4.ps -ajxf 查看进程及其之下的线程&#xff0c;通过stat查看是否存在D僵尸进程 1.什么是负载过高 1.1load A…

假如ChatGPT 去面试前端工程师,结果会怎么样?

近日&#xff0c;有个叫 ChatGPT 的同学来我司面试前端&#xff0c;考考他面试八股文。先来问问闭包。 第一问&#xff0c;说说 JS 闭包 追问&#xff0c;详细讲讲闭包 由于篇幅太长&#xff0c;转成文字&#xff0c;以下皆为 ChatGPT 回答 闭包是一个非常重要的 JavaScript 概…