如何在回归分析中使用虚拟变量
线性回归是一种可以用来量化一个或多个预测变量与响应变量之间关系的方法。
我们通常使用带有定量变量的线性回归。有时称为“数字”变量,这些变量代表可测量的数量。示例包括:
- 房子的平方英尺数
- 一个城市的人口规模
- 个人年龄
然而,有时我们想使用分类变量作为预测变量。这些变量采用名称或标签,并且可以分为类别。示例包括:
- 眼睛颜色(例如“蓝色”、“绿色”、“棕色”)
- 性别(例如“男”、“女”)
- 婚姻状况(例如“已婚”、“单身”、“离婚”)
使用分类变量时,仅仅将 1、2、3 之类的值分配给“蓝色”、“绿色”和“棕色”之类的值是没有意义的,因为这样说是没有意义的那个绿色是双倍的。与蓝色或棕色一样丰富多彩的颜色是蓝色的三倍。
相反,解决方案是使用虚拟变量。这些是我们专门为回归分析创建的变量,它们采用两个值之一:零或一。
虚拟变量:回归分析中用于表示只能采用两个值之一的分类数据的数值变量:零或一。
我们需要创建的虚拟变量的数量等于k -1,其中k是分类变量可以采用的不同值的数量。
以下示例说明了如何为不同数据集创建虚拟变量。
示例 1:创建只有两个值的虚拟变量
假设我们有以下数据集并希望使用性别和年龄来预测收入:
要在回归模型中使用性别作为预测变量,我们需要将其转换为虚拟变量。
由于目前这是一个可以采用两个不同值(“男性”或“女性”)的分类变量,因此我们只需创建k -1 = 2-1 = 1 个虚拟变量。
要创建这个虚拟变量,我们可以选择一个值(“男”或“女”)代表 0,另一个代表 1。
一般来说,我们通常用 0 表示最常见的值,在这个数据集中它是“男性”。
因此,以下是将性别转换为虚拟变量的方法:
然后,我们可以使用Age和Gender_Dummy作为回归模型中的预测变量。
示例 2:创建具有多个值的虚拟变量
假设我们有以下数据集,并希望使用婚姻状况和年龄来预测收入:
要将婚姻状况用作回归模型中的预测变量,我们需要将其转换为虚拟变量。
由于目前这是一个可以采用三个不同值(“单身”、“已婚”或“离婚”)的分类变量,因此我们需要创建k -1 = 3-1 = 2 个虚拟变量。
要创建这个虚拟变量,我们可以将“Single”保留为基值,因为它最常出现。因此,我们将婚姻状况转换为虚拟变量的方法如下:
然后,我们可以使用Age 、 Married和Divorced作为回归模型中的预测变量。
如何使用虚拟变量解释回归输出
假设我们使用上一个示例中的数据集拟合多元线性回归模型,其中Age 、 Married和Divorced作为预测变量, Income作为响应变量。
这是回归的结果:
拟合回归线定义为:
收入 = 14,276.21 + 1,471.67*(年龄) + 2,479.75*(已婚) – 8,397.40*(离婚)
我们可以使用这个方程根据个人的年龄和婚姻状况找到其估计收入。例如,一个 35 岁已婚人士的估计收入为68,264 美元:
收入 = 14,276.21 + 1,471.67*(35) + 2,479.75*(1) – 8,397.40*(0) = $68,264
以下是如何解释表中的回归系数:
- 截距:截距代表零岁单身人士的平均收入。显然,年份不能为零,因此在这个特定的回归模型中单独解释截距本身是没有意义的。
- 年龄:年龄每增加一年,收入平均增加 1,471.67 美元。由于 p 值 (0.00) 小于 0.05,因此年龄是统计上显着的收入预测因子。
- 已婚:已婚人士的平均收入比单身人士多 2,479.75 美元。由于 p 值 (0.80) 不小于 0.05,因此这种差异在统计上不显着。
- 离婚:离婚者的平均收入比单身者少 8,397.40 美元。由于 p 值 (0.53) 不小于 0.05,因此这种差异在统计上不显着。
由于这两个虚拟变量在统计上都不显着,因此我们可以从模型中删除婚姻状况作为预测因子,因为它似乎不会增加收入的预测价值。