当前位置: 首页 > news >正文

【stata】xtreg VS reghdfe

这次的内容一共包括三个部分。
1.固定效应和随机效应的介绍和代码分析;
2.xtreg和reghdfe命令的区别;
3.reghdfe命令的介绍

固定效应FE VS 随机效应RE

FE和RE的核心区别在于如何处理个体之间不可观测的异质性(比如每个工人或公司自身的“固有特质”)。

固定效应模型允许这些个体效应与解释变量相关,要求相对来说比较松;
随机效应模型认为个体效应模型与解释变量不存在相关性,要求是比较严格的。

就比如说,在做企业创新的相关研究,每家企业都有不随时间变化的特征,比如企业文化等等,这些会对企业的创新影响很大,但又很难直接测量。即所谓的 “不可观测的个体效应”,也叫异质性。

以企业创新研究为例,每家企业通常拥有一些不随时间变化的特征,例如企业文化、管理理念等。这些因素虽然难以直接观测或量化,却可能对企业的创新投入与产出产生显著影响。这类无法直接控制但又可能与解释变量(如研发投入)相关的因素,便构成了所谓的**“不可观测的个体效应”,或称为个体异质性**。

若我们认为这些企业特质可能影响自变量(如研发支出)的选择时,更应采用固定效应模型(假设没那么严格);

若有充分理由认为个体效应与解释变量不相关(要求是比较严格了),或需要保留时间不变变量的系数时,用随机效应模型,

但在模型选择的时候,应该 Hausman 检验方法进行合理性验证。

✅ 一张对比表:固定效应 vs 随机效应

比较项固定效应模型(FE)随机效应模型(RE)
基本思想个体特质(如能力、文化)是固定的且与解释变量相关个体特质是随机的,与解释变量不相关
个体效应是否与解释变量相关?✅ 允许相关❌ 假设不相关
处理方式显式控制个体效应(如去均值、哑变量、吸收)把个体效应当作误差的一部分建模
估计方法“within” 转换 / LSDVGLS(广义最小二乘法)
能否估计时间不变变量的系数?❌ 不能(因为时间不变的变量被固定效应吸收了)✅ 可以估计
效率(在假设满足的前提下)稳健但可能效率低更有效率(但要求严格)
Hausman 检验无需(默认更保守)✅ 推荐使用(检验是否合理)
*** 导入数据
webuse nlswork, clear
* 如果你像我一样会报错,那么,你可以选择打开这个链接下载数据
* https://www.stata-press.com/data/r16/nlswork.dta
* use "C:\Users\26985\Downloads\nlswork.dta", clear* 设置面板
xtset idcode year* FE VS RE 
* 注意哦,这里的变量回归没有任何意义,仅仅做演示使用的哦~
xtreg ln_wage hours union age, fe
estimates store fextreg ln_wage hours union age, re
estimates store rehausman fe re

这里的检验结果:

. hausman fe_model re_model---- Coefficients ----|      (b)          (B)            (b-B)     sqrt(diag(V_b-V_B))|    fe_model     re_model      Difference          S.E.
-------------+----------------------------------------------------------------hours |   -.0013602     .0000844       -.0014445        .0001015union |    .1070362       .13072       -.0236838        .0023724age |    .0153429     .0148032        .0005397        .0001229
------------------------------------------------------------------------------b = consistent under Ho and Ha; obtained from xtregB = inconsistent under Ha, efficient under Ho; obtained from xtregTest:  Ho:  difference in coefficients not systematicchi2(3) = (b-B)'[(V_b-V_B)^(-1)](b-B)=      328.00Prob>chi2 =      0.0000. 
end of do-file

这里, p = 0.000 p=0.000 p=0.000,卡方统计量的值为328非常大,说明 FE 和 RE 的估计差异非常大,也即拒绝了原假设 H 0 H_0 H0,说明固定效应模型比随机效应模型更合适。

关于xtreg和reghdfe的差别

注:下面的两个(1)和(2)对应的代码是等同的

  • (1),固定效应模型自动控制了个体效应。所以在使用reghdfe的时候,要使用absorb(idcode)

  • (2)中,xtreg里面的rreghdfe中的vce(r)是一样的。但是呢,加入了稳健标准误后,你会发现结果有所差异,原因在于其代码内部对于固定效应的处理方式不同,xtreg采用去均值,"within"转换;reghdfe采用投影矩阵法,效率更高,支持多个固定效应。

*** 导入数据
webuse nlswork, clear
* 如果你像我一样会报错,那么,你可以选择打开这个链接下载数据
* https://www.stata-press.com/data/r16/nlswork.dta
* use "C:\Users\26985\Downloads\nlswork.dta", clear* 设置面板
xtset idcode year* (1)固定效应模型的两个写法
xtreg    ln_wage hours union age, fe
reghdfe  ln_wage hours union age, absorb(idcode)* (2)固定效应模型——稳健标准误
xtreg    ln_wage hours union age, fe r
reghdfe  ln_wage hours union age, absorb(idcode) vce(r)

当然可以,下面是对 reghdfe 命令在 Stata 中的详细解释和实战指南,适合用于面板数据分析、固定效应建模、高维控制变量建模


reghdfe命令介绍

reghdfe 是一个用于线性回归的高级命令,专门设计来高效地处理 一个或多个固定效应(fixed effects),并支持稳健/聚类标准误差,适合大规模面板数据或需要吸收多个层次控制变量的场景。


🔧 安装命令:

在使用前,请确保你已安装:

ssc install reghdfe, replace
ssc install ftools, replace
ftools, compile

✅ 基本语法结构:

reghdfe depvar indepvars, absorb(varlist) [vce(cluster varname)]

参数说明:

参数含义
depvar因变量
indepvars解释变量(自变量)
absorb(varlist)要吸收的固定效应变量(可多个,如个体、年份、行业)
vce(cluster varname)聚类稳健标准误,通常用于个体或面板单位

📘 示例应用场景讲解

📌 例 1:控制个体固定效应
reghdfe ln_wage hours union age, absorb(idcode) vce(cluster idcode)
  • 控制:个体固定效应(idcode
  • 自变量:工时、是否工会、年龄
  • 对标准误聚类于个体 → 允许个体内的误差项自相关或异方差

📌 例 2:控制个体 + 年份固定效应
reghdfe ln_wage hours union age, absorb(idcode year) vce(cluster idcode)
  • 同时控制了个体差异与年份影响(如经济周期)
  • 类似于在模型中加入 idcodeyear 的一组 dummy 变量,但计算更高效

📌 reghdfe 的优势

优点解释
✅ 多重固定效应可同时吸收多个维度(例如个体 + 时间 + 地区)
✅ 高效计算aregxtreg 更快(特别是大样本)
✅ 聚类支持支持 vce(cluster ...) 聚类于任意维度
✅ 可与权重、交互项配合使用灵活支持各种高级模型设定

🛠 常用选项汇总

选项说明
absorb(varlist)指定固定效应变量
vce(robust)普通异方差稳健标准误
vce(cluster var)聚类标准误,适合面板分析
residuals(varname)保存残差
nofe不显示固定效应部分信息(仅报告主变量)
savefe(varname)保存固定效应估计值
aweights, pweights支持加权回归

✅ 总结:什么时候用 reghdfe

情形是否推荐用 reghdfe
有多个固定效应(如个体+年份)✅ 强烈推荐
需要聚类标准误✅ YES
样本量很大✅ 比 xtregareg 更高效
需要估计时间不变变量❌ 不支持(除非不吸收个体效应)
http://www.xdnf.cn/news/472321.html

相关文章:

  • 位运算题目:找到最接近目标值的函数值
  • 新手入门系列-springboot项目初体验
  • C盘清理秘籍:快速提升系统性能
  • Python 调试扩展版本兼容问题解决纪实
  • 在自动化脚本中使用找色实现精确定位目标区域
  • docker 学习记录
  • uniapp x
  • 软件安全测试报告:检测商业软件安全性,发现潜在风险点?
  • 修复“ImportError: DLL load failed while importing lib: 找不到指定的程序”笔记
  • MySQL 误删除数据恢复全攻略:基于 Binlog 的实战指南
  • 深度学习入门:深度学习(完结)
  • 张量与Python标量:核心区别与计算图断开解析
  • 白平衡模块中普朗克曲线拟合硬件实现的猜想
  • ElfBoard技术实战|ELF 2开发板本地部署DeepSeek大模型的完整指南
  • MyBatis 的分页插件 c
  • 国产芯片LH001-91为什么可以代替TI的ADS1291?
  • 观QFramework框架底层逻辑有感
  • 丝杆升降机限位失灵深度剖析:从故障机理到智能监测方案
  • 硬件创新新纪元:从算力怪兽到便携革命,2025 年如何重新定义计算体验
  • unordered_set和unordered_map
  • 详细解释api
  • 不同进制的数据展示(十进制、十六进制、编码方式)
  • 理解 Viewport:让网页在手机端正确显示的秘诀
  • 星形测试卡:射线摄影获取焦点星卡射线照片的工具
  • win11安装Joplin Server私有化部署(docker)
  • 【应急响应工具教程】Windows日志快速分析工具——Chainsaw
  • 数智管理学(九)
  • MySQL 8.0 OCP 1Z0-908 题目解析(4)
  • Process exited with an error: 1 (Exit value: 1) 问题处理
  • Element Plus 取消el-form-item点击触发组件,改为原生表单控件