如何确定哪些变量导致另一个感兴趣的变量的最大增长?
假设你有一个相关矩阵。您可以查看您特别感兴趣的变量行,retention,并发现在矩阵中的所有变量中,income与之关联最大。
然后,当我看到数据集中收入最高的城市时,我会期望看到它们拥有最高的retention,但我发现情况并非如此。为什么会这样呢?
对于线性回归中的加权系数,我也有类似的问题。
试图隔离哪些变量对retention的影响最大,但不理解为什么收入最高的地区没有最多的retention (如果它们相关性最大/加权系数最高)。我不想做任何预测模型。
如能提供任何协助,将不胜感激。
发布于 2022-02-11 17:19:59
假设您有如下R代码中的数据:
library(ISLR)
df = ISLR::Auto
df = df[,1:4]
summary(df)
round(cor(df), 2)如果你看看相关性..。
mpg cylinders displacement horsepower
mpg 1.00 -0.78 -0.81 -0.78
cylinders -0.78 1.00 0.95 0.84
displacement -0.81 0.95 1.00 0.90
horsepower -0.78 0.84 0.90 1.00..。它暗示displacement对mpg的影响“最大”。您还可能期望mpg和displacement是负相关的。然而,请记住,相关性度量线性效应,并没有给出一个“有多强”变量是相关的好的概念,而是“有多好”的线性拟合可能“解释”的关系。
因此,为了查看哪个变量导致“最大增长”,可以使用线性回归(在这种情况下,根据相关性似乎可以)。
reg1 = lm(mpg~cylinders+displacement+horsepower,data=df)
summary(reg1)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 39.305268 1.324633 29.673 < 2e-16 ***
cylinders -0.719431 0.434180 -1.657 0.098331 .
displacement -0.029120 0.008623 -3.377 0.000807 ***
horsepower -0.059935 0.013498 -4.440 1.17e-05 ***根据回归系数,您可能会怀疑cylinders具有“最大”的影响。然而,你需要记住一些事情。
cylinders的效果取决于剩余的x-variables (因此“控制”了x的其余部分)。cylinders效应的标准是:“一个气缸的增加将使mpg降低-0.719,所有其他条件平均(!!)相等”。cylinders的效果与零无统计学差异。因此,效果可能是零,甚至可能是负的(见p值)。cylinders是用与displacement等不同的“单位”来测量的。您需要以相同的比例尺(拥有mean = 0和standard deviation = 1)的所有数据来比较“大小”的系数。
df_scaled = data.frame(scale(df))
reg2 = lm(mpg~cylinders+displacement+horsepower,data=df_scaled)
summary(reg2)
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.497e-16 2.927e-02 0.000 1.000000
cylinders -1.572e-01 9.489e-02 -1.657 0.098331 .
displacement -3.904e-01 1.156e-01 -3.377 0.000807 ***
horsepower -2.956e-01 6.657e-02 -4.440 1.17e-05 ***使用新的缩放数据,您可以得出不同的结论。也就是说,displacement具有“强大”的影响。在回归分析中,这(有时称为贝塔系数)可能仅次于“最大影响”。
这里的定义是:“x中一个标准差的增加将导致y中的queal变为\beta,所以现在所有的x都是可比较的(因为它可以缩放到平均值= 0,标准差= 1)。
https://datascience.stackexchange.com/questions/108083
复制相似问题