Spark MLlib 特征工程系列—特征转换RobustScaler
在数据预处理中,标准化是一个常见且重要的步骤。StandardScaler
是常用的工具,但当数据中存在离群值时,它的效果往往不理想。为了解决离群值对数据处理的影响,RobustScaler
提供了更鲁棒的缩放方法。本文将详细介绍 RobustScaler
的原理、适用场景、代码示例、以及如何在实际项目中应用。
1. 什么是 RobustScaler?
RobustScaler
是一种基于数据的中位数和四分位数(interquartile range, IQR)进行缩放的工具。与基于均值和标准差的 StandardScaler
不同,RobustScaler
更加适用于数据中存在离群值的情况,因为它不依赖于均值和标准差,而是基于数据的中位数和四分位差进行缩放。
RobustScaler 的缩放公式如下:
[ x scaled = x − median IQR ] [ x_{\text{scaled}} = \frac{x - \text{median}}{\text{IQR}} ] [xscaled=IQRx−median