Box Cox变换

Published: 16 Jul 2019 Category: stats

Box Cox变换是将数据正态化比较有力的工具。

A Box Cox transformation is a way to transform non-normal dependent variables into a normal shape.

使数据more normal distribution-like,而且stabilize variance,性质较好。很多模型对数据分布有正态性假设,比如线性回归,此时对数据做正态变换很有必要。变换公式为

Intuition

公式中$\lambda$是可以优化参数,像R或Python中都有类似的实现。当$\lambda=0$时,是常见的对数变换;取其它值也是对数据做平移和拉伸。

其中对数变换,会将小数据之间的diff放大(inflate),将大数据之间diff缩小(reduce),从而使常见的right skew的分布变换成正态分布,如下图所示

transformed_distribution.jpg (576×384)

log_function.jpg (437×313)

看一个变换后的图例

transformation.jpg (430×611)

注意Box Cox只在幂函数和对数函数中搜索最好的变换,但不能保证一定能达到正态性,变换完需要看看Q-Q Plot或者Normal Probability Plot重新Check下。

Refs