书籍和讨论经常指出,当面对预测器的问题(其中有几个)时,对数变换是可能的。现在,我明白这取决于预测变量的分布和正态性不是回归的假设;但是对数变换确实使数据更统一,受异常值影响更小等等。
我考虑过对所有非主要兴趣的连续变量进行对数转换,即我只调整的变量。
那是错的吗?好的?无用?
书籍和讨论经常指出,当面对预测器的问题(其中有几个)时,对数变换是可能的。现在,我明白这取决于预测变量的分布和正态性不是回归的假设;但是对数变换确实使数据更统一,受异常值影响更小等等。
我考虑过对所有非主要兴趣的连续变量进行对数转换,即我只调整的变量。
那是错的吗?好的?无用?
现在,我明白这取决于预测变量的分布和正态性
对数转换确实使数据更加统一
一般来说,这是错误的——但即使是这样,为什么统一性很重要?
例如,考虑
i) 只取值 1 和 2 的二元预测器。取日志会将其保留为只取值 0 和 log 2 的二元预测器。除了涉及该预测器的项的截距和缩放之外,它不会真正影响任何东西。甚至预测变量的 p 值也不会改变,拟合值也不会改变。
ii) 考虑一个左偏预测器。现在记录日志。它通常会变得更加左偏。
iii) 统一数据变得左偏
(不过,变化通常并不总是那么极端)
受异常值影响较小
作为一般主张,这是错误的。考虑预测变量中的低异常值。
我考虑过对数转换我所有不是主要兴趣的连续变量
达到什么目的?如果最初这些关系是线性的,那么它们就不再是线性的了。
如果它们已经弯曲,自动执行此操作可能会使它们变得更糟(更弯曲),而不是更好。
--
获取预测变量的日志(无论是否具有主要兴趣)有时可能是合适的,但并非总是如此。
在我看来,仅仅为了它而执行日志转换(以及任何 数据转换)是没有意义的。正如前面提到的答案,根据数据,某些转换可能无效或无用。我强烈建议您阅读以下恕我直言关于数据转换的优秀介绍材料:http : //fmwww.bc.edu/repec/bocode/t/transint.html。请注意,本文档中的代码示例是用Stata语言编写的,但除此之外,该文档足够通用,因此对非 Stata 用户也很有用。
可以在本文中找到一些用于处理常见数据相关问题的简单技术和工具,例如缺乏正态性、异常值和混合分布(请注意,分层作为一种处理混合分布的方法很可能是最简单的一种 -对此更通用和更复杂的方法是混合分析,也称为有限混合模型,其描述超出了此答案的范围)。Box-Cox 变换,在上面的两个参考资料中简要提到,是一个相当重要的数据转换,尤其是对于非正常数据(有一些警告)。有关 Box-Cox 变换的更多详细信息,请参阅这篇介绍性文章。
对数转换并不总是让事情变得更好。显然,您不能对实现零值或负值的变量进行对数转换,即使是拥抱零的正值也可能在对数转换后产生负异常值。
您不应该只是例行记录所有内容,而是在拟合模型之前考虑转换选定的正预测变量(通常是对数,但也可能是其他东西)是一个很好的做法。响应变量也是如此。主题知识也很重要。来自物理学或社会学或任何可能自然导致某些转变的理论。通常,如果您看到正偏斜的变量,那么对数(或者可能是平方根或倒数)可能会有所帮助。
一些回归文本似乎建议您在考虑任何转换之前必须查看诊断图,但我不同意。我认为最好在拟合任何模型之前尽你所能做出这些选择,这样你就有了最好的起点;然后查看诊断程序,看看是否需要从那里进行调整。