回归:转换变量


41

转换变量时,是否必须使用所有相同的转换?例如,是否可以选择不同的转换变量,例如:

为年龄,就业时间,居住时间和收入。x1,x2,x3

Y = B1*sqrt(x1) + B2*-1/(x2) + B3*log(x3)

或者,您是否必须与转换保持一致并使用所有相同的转换?如:

Y = B1*log(x1) + B2*log(x2) + B3*log(x3) 

我的理解是,转型的目标是解决正常性问题。查看每个变量的直方图,我们可以看到它们呈现出非常不同的分布,这使我相信所需的转换在每个变量的基础上是不同的。

## R Code
df <- read.spss(file="http://www.bertelsen.ca/R/logistic-regression.sav", 
                use.value.labels=T, to.data.frame=T)
hist(df[1:7]) 

替代文字

log(xn+1)xn00

## R Code 
plot(df[1:7])

替代文字

Answers:


59

一种将变量转换为残差的近似对称性和等度。变量的转换具有不同的目的:毕竟,在此回归中,所有自变量都被视为固定的,而不是随机的,因此“正态性”不适用。这些转换的主要目标是与因变量(或者实际上是其对数)实现线性关系。(此目标超越了辅助目标,例如降低了多余的杠杆这些关系是数据和产生它们的现象的属性,因此您需要灵活地为每个变量分别选择适当的重新表达式。具体来说,使用日志,根和倒数不仅不是问题,而且相当普遍。原理是,(通常)原始数据的表达方式没有什么特别的,因此您应该让数据建议重新表达,从而产生有效,准确,有用和(如果可能)理论上合理的模型。

直方图-反映单变量分布-通常暗示初始转换,但不是确定性的。将它们与散点图矩阵一起使用,以便您可以检查所有变量之间的关系。


log(x+c)cxlog(x)xzxxx=0否则为0。这些条款总和

βlog(x)+β0zx

x>0zx=0βlog(x)x=0log(x)zx=1β0β0x=0βlog(x)


1
非常有用的描述,也感谢我的子问题的指导和细节。
布兰登·

pareonline.net/getvn.asp?v=15&n=12 Osborne(2002)建议将最小值固定在正好为1.0的分布中。pareonline.net/getvn.asp?v=8&n=6
克里斯(Chris)

1
11

1
在我正在处理的一个数据集中,我注意到如果将因变量转换为锚定为1并使用Box Cox变换消除偏斜,则所产生的变换会削弱对您的批评的可信度。;)
克里斯

1
β0zx
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.