面板数据回归中,Within R²、Between R² 和 Overall R² 分别是什么意思?
你用 Stata 跑了一个面板数据固定效应模型:
一、开篇:一个让 Stata 新手困惑的时刻
你用 Stata 跑了一个面板数据固定效应模型:
xtreg y x1 x2, fe输出结果底部出现了三个 R²:
R-sq: within = 0.1523
between = 0.3401
overall = 0.2187
你的第一反应可能是——这三个 R² 有什么区别?为什么同一个模型、同一组数据、同样的变量,却有三个不同的 R²?到底应该报告哪个?
这篇文章回答这几个问题。核心逻辑其实来自面板数据的基本结构——面板数据同时包含两种变异:同一个体随时间的变化(within variation)和不同个体之间的差异(between variation)。三种 R² 分别衡量了你的模型在这两条维度上以及综合起来的解释力。
核心信息:Within R² 衡量"个体随时间的变化被模型解释了多少",Between R² 衡量"个体之间的长期差异被模型解释了多少",Overall R² 衡量"把两种变异混在一起时,模型解释了多少"。在固定效应模型中,你关注的核心系数完全来自 within 变异——所以 Within R² 才是和你的识别策略最匹配的度量。
二、面板数据的两种变异:同一个人的"变化"与不同人的"差异"
2.1 一个例子——学校和学生的成绩
假设你追踪了 500 所学校,每所学校每年测试一次学生平均成绩,共 5 年数据。你想研究**"生均教育经费对学生成绩的影响"**。
面板数据结构:学校 i(i = 1, ..., 500),年份 t(t = 1, ..., 5)。
其中 是学校固定效应,用来吸收所有不随时间变化的学校特征——地理位置、学校类型(公立/私立)、校园面积、建校历史等。
2.2 两种变异——为什么会有三个 R²?
任何面板数据变量 都可以被拆成两部分:
- Between 变异:不同学校的长期平均水平不同。学校 A 五年平均成绩 85 分,学校 B 五年平均成绩 62 分——这是"学校之间的差异"。这个差异来自学校的长期特征(地理位置、生源质量、师资水平等)。
- Within 变异:同一所学校,不同年份的成绩波动。学校 A 在 2018 年成绩 82,2019 年涨到 88——涨了 6 分。这个变化可能来自当年增加的经费、换了校长、政策变化等随时间变化的因素。
同一个 Y,两种不同的变异来源。你的模型对这两种变异的解释力可能完全不同——因此需要两个(其实是三个)不同的 R²。
三、三个 R² 是怎么算出来的?
3.1 Within R²——模型解释了"随时间的变化"的多少?
计算方式:把所有变量的"组内离差"(去均值)提取出来,做 OLS。
- 用 作为因变量
- 用 作为自变量
- 截距项被消掉了(去均值后截距为 0), 也被消掉了——这正是固定效应模型的精髓
在这个"去均值"的回归中,计算通常的 R²(SSE/SST),就得到了 Within R²。
含义:对于一所学校来说,为什么它有些年份成绩高、有些年份低? 这些"随时间波动"的成绩差异中,有多大比例可以被生均经费的同期波动所解释?
一个 0.15 的 Within R² 意味着:学校自身成绩的逐年波动,只有 15% 能和经费的逐年波动挂钩。 剩下的 85% 是其他随时间变化的因素(考试难度、当年师资流动、政策调整等)和随机噪声。
3.2 Between R²——模型解释了"学校之间的长期差异"的多少?
计算方式:把所有变量压缩到"组均值"层面,用 500 所学校的均值数据做一次横截面回归。
- 用 (学校 i 的五年平均成绩)作为因变量
- 用 (学校 i 的五年平均经费)作为自变量
- 样本量从 2500(500 × 5)变成 500
在这个"学校平均"的横截面回归中算出的 R²,就是 Between R²。
含义:为什么有些学校的五年平均成绩是 85 分,有些学校只有 62 分?这些学校之间长期的平均差异,有多大比例可以被"长期平均经费的差异"所解释?
使用组均值回归实际上把所有随时间变化的信息都给抹掉了,只保留了截面(学校 vs 学校)的信息。
3.3 Overall R²——不分变异来源,整个混在一起
计算方式:使用固定效应模型估计出的系数 ,对所有观测值 计算拟合值 ,然后计算 和 的相关系数的平方。
含义:不区分"between"和"within",把所有的 2500 条学校-年份观测一视同仁——在这些观测中,模型整体的"预测值"和"真实值"之间的相关性有多强?
注意:Overall R² 使用的系数是从固定效应模型(仅利用 within 变异)估计出来的,但它算 R² 时却包含了 between 变异。这就导致了一个可能的情况——你的系数是从 within 变异估计的,但 Overall R² 可能被模型在 between 维度上"恰好也还行"的解释力给拉高了。 而模型在 between 维度上的"解释力"和你实际关注的核心系数(来自 within 变异)没有直接关系。
3.4 一张表总结
| R² 类型 | 数据形式 | 使用的是哪种变异 | 回答的问题 |
|---|---|---|---|
| Within R² | 对 | 个体随时间的波动(within variation) | "为什么同一所学校有些年份高有些年份低?" |
| Between R² | 对 (组均值) | 个体之间的长期差异(between variation) | "为什么有些学校五年均分高,有些学校低?" |
| Overall R² | 对 (用FE系数) | 两种变异混合 | "不区分来源,模型预测值和实际值整体有多接近?" |
四、一个数值例子——帮你直观感受
回到 500 所学校的数据。
场景设定:
- 学校类型(table 1):生均经费高的学校,通常也位于大城市、有更好的生源和师资——它们五年平均成绩偏高。这种"经费高→成绩高"的横截面相关包含大量的混淆——学校在大城市本身才是成绩好的深层原因,而不是经费本身。
- 但同一所学校内部——当它的经费在某一学年因政策调整而增加时,这一年成绩确实可能有所上升。这种"同一个学校内部,经费多了成绩也好了"的相关,更接近真实的因果效应。
固定效应回归结果(假定):
| 系数 | 估计值 | 含义 |
|---|---|---|
| β₁(经费) | 0.032 | 生均经费增加 1000 元 → 该校成绩约增加 0.032 分 |
三个 R² 的假设取值:
| R² 类型 | 取值 | 解读 |
|---|---|---|
| Within R² | 0.15 | 同一所学校成绩的逐年波动中,15% 和经费的逐年波动有关 |
| Between R² | 0.34 | 不同学校之间的长期均分差异中,34% 和长期经费差异有关——但这个不是因果效应,包含大量混淆变量 |
| Overall R² | 0.22 | 把所有观测一视同仁时,模型整体解释力 22%,介于两者之间 |
为什么 Between R² 往往比 Within R² 高? 因为学校之间的横截面差异(地理位置、生源、师资、经费等)之间存在很强的相关性——经费高的学校同时在多项特征上都"更好"。横截面回归的 R² 反映的是这个综合的"学校质量包",而不只是经费本身的效应。
为什么 Within R² 往往较低? 因为对同一所学校来说,五年内成绩的波动很小(可能只有 5—10 分的范围),其中能和五年内经费波动"对上"的部分更少。大多数逐年波动是测量误差、考试难度、特定年份的学生差异等"噪音"驱动的。
五、应该用哪个 R² ?——取决于你的识别策略
5.1 固定效应模型 → 核心关注 Within R²
在固定效应(FE)模型中,你的 完全来自within 变异。个体固定效应 吸收了所有不随时间变化的、个体间的异质性。所以——你的识别策略依赖的是 within 变异,你当然应该关注你的模型在 within 维度上的解释力。Within R² 是你的模型的"工作环境"。
在实证论文中,描述"模型的整体拟合度"时通常报告的是 Overall R²(或调整后的 R²),但如果你在讨论"这个模型的 within 解释力",用 Within R²。如果你看到 Within R² 极低(比如 0.005),这不一定有问题——很多固定效应模型清除掉所有 between 变异后,残余的 within 变异本身就很小且噪声很大,低 Within R² 是正常的。
5.2 随机效应模型 → 关注 Overall R²
在随机效应(RE)模型中,同时使用了 between 和 within 两种变异。这时 Overall R² 是最自然的度量——模型本身就在利用全部信息。
但 RE 模型要求一个苛刻的假设( 与 X 不相关),因此经济学实证研究较少使用 RE 作为主要设定——大多用 FE,或至少做 Hausman 检验择优。
5.3 组间(Between)回归 → 关注 Between R²
如果研究问题本身是横截面的——比如"为什么有些国家长期增长快,有些长期增长慢",那么你关注的就是 between 维度的解释力。但在这种情况下,你不会用面板固定效应模型——你会直接用平均值的横截面回归。
六、实证研究中 R² 的范围:什么是正常的?什么需要警惕?
6.1 一个粗略的经验参考
注意:以下数字是经验法则,不是金科玉律。不同领域、不同数据、不同研究问题的"正常 R²"差异巨大。
| R² 范围 | 在经济学实证中的典型情况 | 判断 |
|---|---|---|
| 0.01—0.10 | 使用微观数据的固定效应模型,控制了大量个体固定效应和时间固定效应后的核心回归 | 完全正常,尤其在劳动、教育、健康经济学中 |
| 0.10—0.30 | 微观数据的 OLS 回归(控制了丰富的协变量),或宏观面板的 FE 模型 | 正常且常见 |
| 0.30—0.60 | 宏观时间序列回归,或使用加总数据(aggregated data)的回归 | 常见,但需要检查是否存在时间趋势驱动的伪回归 |
| 0.60—0.85 | 长时间跨度的宏观时间序列(如 GDP 对资本和劳动的回归),或使用了加总度很高的数据 | 警惕:检查是否存在单位根(做平稳性检验),是否存在过度拟合 |
| 0.85 以上 | 极少出现在微观数据中 | 高度警惕:可能包含同义反复(Y 和 X 几乎恒等),或时间趋势伪回归,或加入了过多内生的控制变量 |
6.2 Within R² 通常偏低——这不是问题
固定效应模型的 Within R² 通常会显著低于 OLS 回归的 R²。这不是因为"模型差了",而是因为:
第一,固定效应已经把最丰富的变异来源(个体间差异)剔除掉了。 剩下的是个体内部随时间波动的"残差变异"——这部分本身波动就比原始 Y 小很多,而且噪声比例更高。
第二,Within 维度上的处理变异可能非常有限。 很多自变量的主要变异来自 between 维度——学校之间的教育经费差异远大于同一所学校五年的经费变动。如果你的主自变量变化很慢(slow-moving variable),within 变异极小,Within R² 自然也低。
所以——一篇因果识别论文中,Within R² = 0.03 是完全正常的。审稿人不会因此质疑你。 这不是拟合不行,是固定效应在帮你进行识别时自动付出的"成本"。
6.3 R² 过高——什么时候需要警惕?
警惕信号一:R² > 0.90 且来自非时间序列的微观数据。
在微观调查数据(如家庭收入回归)中,R² 极少超过 0.5。如果到了 0.9 以上,检查——你是不是把 Y 的某种函数形式当作控制变量放了进来?(比如用"收入"回归"消费"——R² 当然高,但这几乎是恒等式。)
警惕信号二:加入某个变量后 R² 巨幅跳升。
如果你的 R² 加了一个变量从 0.2 跳到 0.8,要么这个变量和 Y 有同义反复关系,要么这个变量是一个吸收了几乎所有 between 变异的"聚合变量"——它可能不是你想要的因果变量,而是一个更强的混淆变量的代理。
警惕信号三:Between R² 远高于 Within R² 且你在用 FE。
这本身不是问题——很多数据中 between 变异就是比 within 变异更"有结构"。但如果你发现 Between R² = 0.8 而 Within R² = 0.02,这说明:学校之间的差异(地理位置、长期生源素质→长期经费水平)"预测"了几乎所有成绩差异。在 within 维度上真正随经费变动的成绩波动非常有限。这可能意味着——你的核心自变量在 within 维度上几乎没有"实验性的变异"——它的系数估计本质上是噪声驱动的。此时应该检查一阶段 F 统计量(如果使用 IV)或 within 维度的变异系数是否过低。
七、总结
三句话记住三个 R²:
- Within R²:同一个体随时间的变化被模型解释了多少——这是 FE 模型的心脏。
- Between R²:不同个体之间的长期差异被模型解释了多少——这是横截面回归的世界。
- Overall R²:不区分变异来源,模型整体解释力——混合了两种信号。
在实证研究中:使用固定效应模型时,Within R² 才是和你的识别策略一致的度量。Within R² 低不丢人——这是你为了剔除混淆变量而付出的信息代价。但如果某篇论文声称使用 FE 识别因果,而 Within R² = 0.95——你需要追问"这个模型识别的是因果效应还是恒等式"。
一句话收尾:
"面板数据有三种 R²,是因为一个 Y 有两种变异——随时间的变化(within)和个体间的差异(between)。你选择了固定效应,就等于选择了只相信 within 变异。那么,你应该报告和相信的,理所当然就是 Within R²。"
八、B站/公众号呈现建议
- B站视频:建议用"分屏动画"展示同一份面板数据的两种视角——左侧画面按时间纵轴展示一所学校的成绩波动(within),右侧画面把所有学校的五年均值并排比较(between)。然后在两个画面上分别叠加回归线,直观展示为什么同一条回归线在两个维度上的"解释力"完全不同。
- 公众号:三个 R² 的公式和对应含义建议用三栏对照表。数值例子可以配一张面板数据的"学校 × 年份矩阵图",用颜色深浅表示成绩高低,直观展示 within 和 between 变异。
- 推荐标题:
- 主标题:《面板数据回归为什么有三个 R²?应该用哪个?》
- 备选标题:《Within R² 只有 0.03?别慌,这不丢人》
- 金句提炼:
"你选择了固定效应,就等于选择了只相信 within 变异。那么,你应该报告和相信的,就是 Within R²。"