论文实证分析系列(四):稳健性检验的几种常用方法(含 Python 示例)
在做论文实证分析时,回归结果往往要经过 稳健性检验(Robustness Check) 才算完整。稳健性检验的目的是确认:结论不是偶然的,而是在不同设定下依然成立。本文总结几种常见的稳健性检验方法,并附上 Python 的实现示例。
一、为什么要做稳健性检验?
稳健性检验的核心思想是:在不同的模型设定或数据条件下,核心解释变量(Independent Variable of Interest)的系数方向和显著性是否保持一致。
- 如果一致,说明结论稳健,可信度高。
- 如果差异很大,就需要谨慎解释,甚至考虑模型是否存在遗漏变量或设定错误。
换句话说,稳健性检验不是为了“证明自己一定正确”,而是为了说明“结论不是脆弱的”。
二、常见的稳健性检验方法
1. 增减控制变量
理论背景:
- 在社会科学研究中,遗漏变量偏误(Omitted Variable Bias)是常见问题。
- 如果我们担心某些变量遗漏导致系数虚高或虚低,可以尝试在模型中加入更多控制变量。
- 相反,也可以去掉部分控制变量,检查核心结果是否依然显著。
判断标准:核心变量的系数方向不变,显著性水平变化不大,则结果稳健。
Python 示例(OLS with/without extra controls):
import statsmodels.api as sm import pandas as pd # 示例数据 data = pd.DataFrame({ "Y": [1,2,3,4,5,6], "X": [2,4,5,4,5,7], "control1": [3,2,4,3,4,5], "contr