第八章:计量经济学浏览器回归实验
第八章:计量经济学浏览器回归实验
本章用七组数据生成过程把计量经济学的关键概念变成可重复实验。每个问题同时给出 Python 与 R 代码,使用相同的模型和随机种子。你可以直接点击运行,也可以显示代码后修改样本量、信号强度和误差结构。
这里使用合成数据,是为了让“真参数”和内生性来源已知。真实研究没有这个便利:研究者必须借助制度背景、研究设计和稳健性分析论证识别。
学习成果
完成实验后,你应能够:
- 用正规方程和软件回归得到相同的 OLS 系数;
- 通过数据生成过程解释遗漏变量偏误的方向;
- 比较经典标准误与异方差稳健标准误;
- 手工完成第一阶段和第二阶段,解释 2SLS 的识别来源;
- 用组内去均值理解固定效应估计;
- 说明聚类标准误为什么必须匹配处理分配层级;
- 用 Bootstrap 近似估计量的抽样分布。
实验规范
每次实验按以下顺序记录:
- Estimand:想估计哪个总体参数?
- DGP:数据怎样生成,哪些变量可观测?
- Estimator:软件究竟计算了什么?
- Inference:标准误允许怎样的误差相关?
- Interpretation:结果是描述、预测还是因果?
实验一:从正规方程到 OLS
目标
在线性模型
中,OLS 选择使残差平方和最小的系数:
下面用矩阵计算和回归软件计算同一个结果。
Python:手工 OLS 与软件结果
R:手工 OLS 与 lm 结果
应当观察到什么
两种实现的系数完全一致,且残差与每一列解释变量样本正交。系数不等于真值 1.5 是抽样误差,不是程序错误。把样本量从 300 改为 30,再多次运行,可以看到估计波动增大。
实验二:遗漏变量偏误可以有方向
数据生成过程
假设能力同时影响教育和工资:
教育的结构系数是 0.10。若能力不可观测,短回归把部分能力效应归到教育上。
Python:短回归与完整回归
R:短回归与完整回归
偏误方向
在单一遗漏变量情形,偏误近似为:
两个因子都为正,因此短回归向上偏。把能力对教育的系数改为负值,偏误方向会改变。真实数据中能力可能不可观测,加入代理变量也可能有测量误差,因此“控制更多变量”不等于自动恢复因果效应。
实验三:异方差改变推断,不一定改变系数
数据生成过程
令误差标准差随 增大:
若条件均值仍为零,OLS 系数可以无偏或一致,但经典同方差标准误不再可靠。
Python:经典与 HC1 标准误
R:手工计算 HC1 标准误
审计问题
- 稳健标准误不修复内生性、遗漏变量或错误函数形式。
- 小样本中 HC0、HC1、HC2、HC3 可能差异明显。
- 若误差在群组或时间上相关,仅做异方差稳健仍然不够。
实验四:工具变量与两阶段最小二乘
数据生成过程
令 影响教育,但不直接影响工资;能力同时影响教育和工资:
在模拟中, 与能力独立,因此相关性与排除限制按设计成立。
Python:OLS、第一阶段与 2SLS
R:OLS、第一阶段与 2SLS
为什么要警告标准误
把第一阶段拟合值直接放进普通 OLS 可以得到恰好相同的 2SLS 点估计,但普通第二阶段标准误忽略拟合值的估计误差。正式研究应使用专门 IV 估计器,并报告弱工具诊断、稳健或聚类标准误,以及排除限制的制度论证。
弱工具实验
把第一阶段系数 0.9 改为 0.08,重复运行。你会看到第一阶段 F 值下降,2SLS 估计波动明显增大。显著的第一阶段也不能证明排除限制;它只提供相关性证据。
实验五:固定效应的组内变换
数据生成过程
个体特征 同时影响解释变量和结果:
Pooled OLS 遗漏 。固定效应通过个体内去均值消除时间不变的 :
Python:Pooled OLS 与组内估计
R:Pooled OLS 与组内估计
固定效应不能做什么
固定效应只消除时间不变、以加法进入模型的个体差异。它不能自动解决时间变化的混淆、反向因果、测量误差或动态面板偏误。若处理几乎不随时间变化,组内估计还可能非常不精确。
实验六:标准误应跟随处理分配层级
数据生成过程
假设政策在学校层面分配,而结果在学生层面观测。同校学生共享学校冲击:
即使有很多学生,真正独立的处理变异主要来自学校数量。
Python:普通与学校聚类标准误
R:手工学校聚类标准误
解释
把学生人数当作独立样本会夸大有效信息量。聚类层级应由处理分配和误差相关机制决定,不能只选择让显著性最好看的层级。群组很少时,常规聚类渐近近似也可能不可靠,需要小样本修正、随机化推断或 wild cluster bootstrap。
实验七:Bootstrap 看见估计量的抽样分布
思想
Pairs Bootstrap 从观测对 中有放回重抽样,每次重新估计系数。得到的系数分布近似原估计量的抽样分布。
Python:Pairs Bootstrap 回归
R:Pairs Bootstrap 回归
Bootstrap 不是万能修复
重抽样单位必须匹配数据结构。时间序列常需要 block bootstrap;聚类数据应按群组重抽样;极端小样本、参数在边界、弱识别或非平滑统计量下,普通 Bootstrap 可能失败。
综合作业
选择一个实验并完成以下审计:
- 写出 DGP、estimand 和估计量;
- 用 Python 与 R 得到基准结果;
- 改变样本量和一个结构参数,重复 200 次;
- 画出估计量分布或报告偏差、标准差和覆盖率;
- 指出在真实数据中最危险的识别假设;
- 说明应使用何种稳健性检查和标准误。
进一步阅读
- Wooldridge, Introductory Econometrics:OLS、IV、面板和应用解释;
- Hayashi, Econometrics:投影、渐近理论、GMM 与时间序列;
- Hansen, Econometrics:现代估计与推断的系统参考;
- Angrist and Pischke, Mostly Harmless Econometrics:研究设计与实证直觉;
- Cameron and Miller (2015), “A Practitioner’s Guide to Cluster-Robust Inference”。