【问题标题】:Interpreting estimates of categorical predictors in linear regression [duplicate]解释线性回归中分类预测变量的估计
【发布时间】:2016-07-18 14:45:38
【问题描述】:

我是线性回归的新手,我正在尝试弄清楚如何解释汇总结果。我很难解释分类预测变量的估计值。考虑以下示例。我添加了年龄和长度列以包含数字预测器和数字目标。

library(MASS)
data <- as.data.frame(HairEyeColor)

data$length <- c(155, 173, 172, 176, 186, 188, 160, 154, 192, 192, 185, 150, 181, 195, 161, 194,
173, 185, 185, 195, 168, 158, 151, 170, 163, 156, 186, 173, 167, 172, 164, 182)
data$age <- c(48, 44, 8, 23, 23, 63, 64, 26, 8, 56, 40, 11, 17, 12, 60, 10, 9, 21, 46, 7, 12, 9, 32, 37, 52, 64, 36, 31, 41, 24)

summary(lm(length ~ Hair + Eye + Sex + age, data))

输出:

         Estimate Std. Error t value Pr(>|t|)    
(Intercept) 182.72906    8.22026  22.229   <2e-16 ***
HairBrown     6.22998    7.45423   0.836    0.412    
HairRed      -0.38261    7.50570  -0.051    0.960    
HairBlond    -0.25860    7.36012  -0.035    0.972    
EyeBlue      -8.44369    7.36646  -1.146    0.263    
EyeHazel      0.06968    7.49589   0.009    0.993    
EyeGreen     -0.15554    7.27704  -0.021    0.983    
SexFemale    -4.92415    5.18308  -0.950    0.352    
age          -0.19084    0.15910  -1.200    0.243

其中大部分并不重要,但我们暂时忽略它。

  1. 关于(拦截)有什么要说的?直观地说,这是当分类预测变量(头发 = 黑色、眼睛 = 棕色、性别 = 男性)的基线值适用且年龄 = 0 时的长度值。这是正确的吗?

  2. 数据集中长度的平均值为 173.8125,但估计值为 182.72906。这是否意味着对于基线情况,长度的估计实际上高于平均长度?

  3. 与问题 2 类似的问题:假设 Eye = Blue,所有其他值仍作为基线。然后估计值变为 174.284 (182.72906 - 8.44369)。我可以由此推断出预期的平均长度是 174.284,因此仍高于整体平均值(173.8125)吗?

  4. 如何发现哪个预测变量/值对长度有正面或负面影响?简单地采用估计的方向是行不通的:负估计仅意味着与基线相比具有负面影响。这是否意味着我可以仅推断例如 Eye = Blue 与 Eye = Brown 相比具有负面影响,而不是推断它总体上具有负面影响?

  5. 为什么 (Intercept) 很重要,而所有其他行都不重要?拦截的意义是什么?

  6. 当仅使用 Hair 作为预测变量运行模型时,Hair = Blond 的方向变为正(见下文),而在之前的模型中为负。那么为每个预测器单独运行模型是否更明智,以便我可以捕获单个预测器的真实大小和方向?

        summary(lm(length ~ Hair, data))
    
    
        Estimate Std. Error t value Pr(>|t|)    
    
        (Intercept)  173.125      5.107  33.900   <2e-16 ***
        HairBrown      4.250      7.222   0.588    0.561    
        HairRed       -2.625      7.222  -0.363    0.719    
        HairBlond      1.125      7.222   0.156    0.877  
    

感谢您的帮助。

【问题讨论】:

    标签: r regression linear-regression lm


    【解决方案1】:

    逐点计算:

    1) 是的,您的解释是正确的。 HairBrown = 6 表示棕色头发个体的长度比基线类别长 6 个单位。在这种情况下是黑发,但值得注意的是,基线的选择对于分类变量是任意的。

    2) 我不会真正以这种方式单独解释截距值,因为:A) 请记住,您还有一个连续的预测变量(年龄),您没有将其纳入这个概念;在年龄 = 0 时没有人,因此您正在估计一个不会(或不能,而是)出现在您的数据集中的个人的值。 B)您有几个解释变量,因此“基线情况”是将不需要归为一类的事物混为一谈。您有关于每个变量在做什么的信息,并且可以将它们结合起来以预测年龄、眼睛颜色、性别和头发颜色的任何特定组合的值。

    3) 在某些情况下可以,但在您的示例中,您指的是年龄 = 0 的人。即便如此,我也不明白您为什么要尝试与平均情况进行比较(原因在前一个案例中解释过)。此外,暂时忽略连续预测变量,组间样本量的差异会强烈影响总体平均值。将各个组相互比较几乎总是比将单个组与总体平均值进行比较更有意义。另请注意,这忽略了参数估计中的不确定性。

    4)“总体上具有负面影响”不是很有意义。这必然是一种比较,即相对于某事是否定的。您可以做的是在其他类别(不仅仅是基线)与估计系数之间进行成对比较,因为这些关系是可传递的。例如。 EyeBlue 和 EyeGreen 相对于基线都是负数,但 EyeGreen 的负数要大得多。所以绿眼睛的人的长度更短(忽略变量不显着的事实)

    5) 截距显着仅意味着您的基线长度不等于 0。在大多数情况下,这不是很有用,特别是因为(再次!)这假设年龄为 0。这是一个问题外推。

    6) 不,但这不是一个非常简单的话题(如果您有兴趣了解更多,请查看型号选择)。在这种情况下,您的变量都不重要,这(松散地说)意味着您无法真正说出任何变量是否具有正面或负面影响。因此,模型结构的变化翻转符号也就不足为奇了。查看置信区间以了解参数估计值的范围;它们的范围从消极到积极。基本上,假设您有一个不错的样本量,您的变量可能不会解释太多。

    这里的所有比较都更容易用一个数字来思考(使用上面的参数值,并根据头发颜色着色):

    【讨论】:

      【解决方案2】:
      1. 是的。虚拟变量是通过对比编码创建的,因此您的截距确实是对基值的预测。

      2. 再次如第 1 点所述,是的。

      3. 是的,您可以得出这样的结论,但差异很小。您应该检查平均值是否落在置信区间内。如果是这样,则平均值与 Blue 值之间的差异对于实际用途而言并不显着。

      4. 由于这些都是虚拟变量,您可以推断正估计表示正影响,反之亦然。但是,更准确地说,看看置信区间。只有当上下区间都是正数时,您才能自信地说该变量具有正向影响。否则它是不可预测的。

      5. 由于您的数据未向模型提供有关所有变量为零时会发生什么情况的任何信息,因此模型将具有较少的观测值,无法对截距做出任何有意义的预测。您的虚拟变量在任何时候都不会全为零。

      6. 是的,你可以这样做,但它只会给你方向,前提是置信区间不包括它们之间的零。

      如果我是你,我会选择一个不同的模型,比如回归树,它可以很好地处理分类变量。

      【讨论】:

      • 感谢您的回复。您知道如何防止这些值被用作虚拟变量吗?
      • @Joseph 如果不是虚拟变量,您将如何建模它们?它们不是数值。因此,您可以像说 Red>Brown>Blonde 那样对它们进行排序,并分配 1、2、3 的数字以使它们成为强制数字(这是一种非常糟糕的方法)或将它们转换为虚拟变量(在这种情况下是理想的方法)。这是可用于线性回归的仅有的两种方法。就像我说的,您应该尝试其他方法来对数据进行建模,这些方法允许使用分类变量。
      • @ZheyuanLi Y 不是吗?输出摘要清楚地表明lm() 已经计算了分类变量的每个值的系数。这与使它们成为二进制虚拟变量相同。
      • "截距表示头发颜色不等于模型中指定颜色时的长度值"。这是错误的。在分类变量的情况下,它采用参考组的值。对于连续变量,当变量为零时显示期望值。
      • @mkt 谢谢我做了更正。
      猜你喜欢
      • 2020-06-20
      • 1970-01-01
      • 1970-01-01
      • 2021-12-24
      • 2014-04-06
      • 2022-07-27
      • 2019-06-27
      • 2021-01-19
      • 1970-01-01
      相关资源
      最近更新 更多