标准化二元变量以在回归中创建交互项?

机器算法验证 回归 分类数据 相互作用 标准化
2022-04-01 09:57:51

我目前正在运行多元线性回归,并且我有一个关于如何正确构建模型的一个二元变量(性别)和连续变量(年龄)之间的交互项的问题。

有人建议我在创建乘积项并将其输入回归模型之前对变量进行标准化。这样做是为了避免交互项和分量变量之间潜在的多重共线性。

但是,我是否应该遵循此建议并在使用标准化连续变量(年龄)创建乘积项之前标准化我的二进制变量(性别)?

有些人建议虚拟变量和连续变量都应该标准化以站在同一立场,而有些人则认为没有必要标准化分类(虚拟)变量。

您能否建议更合适的方法来处理这个问题?谢谢!

4个回答

对虚拟变量进行标准化没有什么意义

  1. 它不能增加标准偏差,因此标准化系数的常规解释不适用

  2. 此外,虚拟变量的标准解释(显示两个类别之间的 Y 平均水平差异)丢失了

您的交互结果可以解释如下:

在女性人群中(性别假人 1=女性 0=男性),年龄增加 1 个标准差点(标准化年龄,平均值 = 0,标准 = 1)具有正/负(显着/不显着)效应(精确值)交互项的系数)在因变量(Y 变量)上。

下面的链接可能会有所帮助

此链接的第 5 页 http://polisci.msu.edu/jacoby/icpsr/regress3/lectures/week2/8.RelImport.pdf

此链接的第 9 页 https://stat.ethz.ch/~maathuis/teaching/stat423/handouts/Chapter7.pdf

分类变量的“平均居中”过程与用于连续变量的过程不同(在 R 中:scale(x, center=T, scale=F)。您可以通过使用效果编码策略来表示中心分类变量传统的虚拟编码(0/1)。编码方案的选择并不重要(因为它们是线性等价的=>所以基本上你可以检索一个知道另一个结果的结果)。但是它在结果的解释/阅读。

在您的情况下,我认为“平均中心”(效果代码)性别变量真的没有意义,因为(1)这个变量只有两种模态,(2)你与一个连续变量(即年龄)交互. 假设性别的参考类别是“男性”,在您的模型中(y ~ 性别 + 年龄 + 性别年龄),“年龄”将代表性别 = 男性时的平均效应,“性别年龄”表示从男性到女性的边际效应。

如果您决定“平均中心”(效应代码)性别,那么“年龄”将对应于当性别设置为其平均值时年龄的平均效应(所以基本上介于男性和女性之间)。如果比较 (y ~ 性别 + 年龄) 和 (y ~ 性别 + 年龄 + 性别 * 年龄),你会发现两个模型之间的“年龄”估计值几乎没有差异,如果你不意味着什么不是这种情况中心“性别”。

就个人而言,我发现分类变量的均值居中(效果编码)在我想估计其中 2 个(或更多)它们之间的交互影响时很有用 - 然后我不必跟踪参考情况(例如,男性 - 年轻 - ETC。)。希望这可以帮助!

关于如何设置交互的细节,这个网页似乎很有帮助:http ://www.restore.ac.uk/srme/www/fac/soc/wie/research-new/srme/modules/模组3/11/

您不需要标准化变量(除非它们已经标准化)。

我会这样设置(将此列表限制为少数年龄):

年龄性别年龄*性别

10 1 10

20 1 20

30 1 30

10 0 0

20 0 0

30 0 0

交互项是指高阶项吗?所以而不是:

fit <- lm(y ~ x1 + x2, data = mydata)

你可以做

fit <- lm(y ~ x1 + x2 + x1*x2, data = mydata)

(回头看看这个答案,它可能不是你要找的。我建议尝试将你的性别变量设置为 -1 或 1,这样至少性别和年龄之间的乘积项的平均值为零。)