You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R固定效应回归对比:plm与lm加factor()的R、R²解释差异辨析

不同固定效应实现方式的R²计算逻辑与适用性

不存在绝对意义上的“正确”R²,三类模型输出的R²差异本质是统计计算口径的区别,没有本质的对错,只看是否匹配你的研究解释目标。

三类模型的R²计算核心逻辑

  • 带固定效应虚拟变量的lm模型:R²的计算逻辑和普通横截面回归完全一致——把所有纳入回归的变量(核心解释变量、个体固定效应虚拟变量、时间固定效应虚拟变量)全部算作模型的解释成分,以因变量的全样本总离均差平方和为分母,计算残差平方和占比,最终得到全模型的整体拟合优度。
  • 带双向固定效应的plm within模型:R²的计算是先通过组内去均值变换完全剔除所有个体、时间固定效应的贡献,仅以核心解释变量对剔除固定效应后的剩余因变量变异的解释力为计算目标,不纳入固定效应对因变量的解释贡献。
  • lfe包的felm模型:会拆分R²的构成,分别报告固定效应单独解释的变异占比、核心解释变量单独解释的变异占比,其中剔除固定效应后的核心变量解释力部分,和plm的within R²计算逻辑完全一致。

你观察到的数值差异的本质原因

两种常见的认知偏差,很容易让人误判R²的“对错”:

  1. 关于“plm的R²明显更高”:两者的计算分母完全不同。lm的分母是包含固定效应解释成分的全样本总变异,plm的分母是剔除固定效应后的剩余变异。如果模拟场景里不存在真实的固定效应成分(比如你提供的测试代码里,生成y的时候根本没有加入个体、时间层面的固定效应项),那么这堆虚拟变量只会吃掉随机抽样带来的组均值波动,这时候plm的分母会比lm的分母更小,算出来的within R²自然看起来更高。反过来如果你的真实数据里固定效应解释了大部分的因变量变异,lm的全模型R²反而会远高于plm的within R²,两者没有固定的大小关系。
  2. 关于“lm输出的R²出现负值”:正规的、直接把factor(region)、factor(year)纳入回归方程的lm模型,样本内R²永远不会为负。你看到的负R²,基本都是手动做组内去均值变换后,拿去均值的变量直接跑无截距回归时,R²计算没有校正无截距模型的总平方和基准,导致的计算偏差——当核心变量的解释力弱于随机噪音时,无截距回归的残差平方和甚至会大于“直接用0预测”的平方和,自然就会算出负的R²,这不是模型本身的问题。

实际应用中的R²选择标准

  • 如果你的研究目标是解释“核心解释变量+固定效应整体,能解释多少因变量的总变异”,用lm输出的全模型R²是合适的,这个指标的解读逻辑和传统回归完全一致。
  • 如果你的研究目标是回答“在剔除所有不随时间/个体变化的混淆冲击后,核心解释变量本身有多大解释力”,用plm、felm输出的剔除固定效应的within R²是合适的,这个指标能避免固定效应的虚高解释力误导对核心变量真实效应的判断。
  • 汇报R²时一定要明确标注计算口径,不要跨口径横向比较——比如不能拿plm的within R²和lm的全模型R²对比判断哪个模型拟合更好,两者的衡量目标完全不同。

内容的提问来源于stack exchange,提问作者Mat36

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.28 15:15:03