R中lm中调整后的R平方公式是什么,应该如何解释?

机器算法验证 r 回归 r平方 流明 正则化
2022-02-14 12:35:20

R中用于调整R平方的确切公式是什么?lm() 我该如何解释它?

调整后的 r 平方公式

似乎有几个公式可以计算调整后的 R 平方。

  • Wherry 公式:1(1R2)(n1)(nv)
  • 麦克尼马尔公式:1(1R2)(n1)(nv1)
  • 洛德公式:1(1R2)(n+v1)(nv1)
  • 斯坦因公式:1[(n1)(nk1)(n2)(nk2)(n+1)n](1R2)

教科书说明

  • 根据 Field 的教科书,Discovering Statistics Using R (2012, p. 273) R 使用了 Wherry 方程,该方程“告诉我们如果模型是从抽取样本的总体中得出的,那么 Y 的方差有多大”。他没有给出 Wherry 的公式。他建议使用 Stein 公式(手动)来检查模型交叉验证的效果。
  • Kleiber/Zeileis,Applied Econometrics with R (2008, p. 59) 声称它是“Theil 调整后的 R 平方”,并没有确切说明它的解释与多个 R 平方有何不同。
  • Dalgaard, Introductory Statistics with R (2008, p. 113) 写道:“如果将 [调整后的 R 平方] 乘以 100%,它可以解释为‘% 方差减少’”。他没有说这对应于哪个公式。

我之前曾想过并广泛阅读,R-squared 会因在模型中添加额外的变量而受到惩罚。现在,这些不同公式的使用似乎需要不同的解释。我还查看了 Stack Overflow 上的一个相关问题(在单变量最小二乘回归中 Multiple R-squared 和 Adjusted R-squared 有什么区别?),以及沃顿商学院在 UPenn 的统计词典

问题

  • 哪个公式用于 R 调整的 r 平方 lm()
  • 我该如何解释它?
2个回答

1. R 中的什么公式lm用于调整 r 平方?

如前所述,键入summary.lm将为您提供 R 用于计算调整后的 R 平方的代码。提取您得到的最相关的行:

ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf)

在数学符号中对应于:

Radj2=1(1R2)n1np1

假设有一个截距(即df.int=1),是您的样本大小,是您的预测变量数。因此,您的错误自由度(即)等于nprdfn-p-1

该公式对应于 Yin 和 Fan (2001) 标注的 Wherry Formula-1(显然还有另一个不太常见的 Wherry 公式,它在分母)。他们建议按出现的顺序最常见的名称是“Wherry 公式”、“Ezekiel formlua”、“Wherry/McNemar 公式”和“Cohen/Cohen 公式”。npnp1

2.为什么有这么多调整后的r平方公式?

Radj2旨在估计,即总体回归方程解释的总体方差比例。虽然这显然与样本量和预测变量的数量有关,但最好的估计量是什么就不太清楚了。因此,您有模拟研究,例如 Yin 和 Fan (2001),它们根据估计的程度评估了不同的调整 r 平方公式(请参阅此问题以进行进一步讨论)。ρ2ρ2

之间的差异随着样本量的增加而变小。随着样本量趋于无穷大,差异接近于零。随着预测变量的减少,差异也会变小。R2Radj2

3. 如何解释Radj2

Radj2是总体中由真实回归方程解释的方差比例的估计值。您通常会对感兴趣,而您对变量的理论线性预测感兴趣。相反,如果您对使用样本回归方程进行预测更感兴趣(在应用设置中通常是这种情况),那么某种形式的交叉验证会更相关。ρ2ρ2R2

参考

  • 尹 P. 和范 X. (2001)。估计收缩:不同分析方法的比较。实验教育杂志,69(2),203-224。PDF格式R2

关于您的第一个问题:如果您不知道如何计算,请查看代码!如果你summary.lm在控制台中输入,你会得到这个函数的代码。如果您浏览代码,您会发现一行:ans$adj.r.squared <- 1 - (1 - ans$r.squared) * ((n - df.int)/rdf). 如果您查看此行上方的某些行,您会注意到:

  • ans$r.squared: 是你的R2
  • n是残差数 = 观察数
  • df.int是 0 或 1(取决于你是否有截距)
  • rdf是你的剩余 df

问题 2:来自维基百科:“已调整R2是一个修改R2根据模型中解释项的数量进行调整。'