dask_ml.preprocessing.RobustScaler
dask_ml.preprocessing
.RobustScaler¶
- class dask_ml.preprocessing.RobustScaler(*, with_centering=True, with_scaling=True, quantile_range=(25.0, 75.0), copy=True, unit_variance=False)[源代码]¶
使用对异常值稳健的统计数据来缩放特征。
此缩放器移除中位数,并根据分位数范围(默认使用IQR:四分位距)缩放数据。IQR是第一四分位数(第25个分位数)和第三四分位数(第75个分位数)之间的范围。
中心化和缩放在每个特征上独立进行,通过计算训练集中样本的相关统计数据。然后存储中位数和四分位距,以便在使用
transform()
方法处理后续数据时使用。数据集的标准化是许多机器学习估计器的常见预处理步骤。通常通过去除均值并缩放到单位方差来完成。然而,异常值通常会以负面方式影响样本均值/方差。在这种情况下,使用中位数和四分位距通常会得到更好的结果。有关示例可视化和其他缩放器的比较,请参阅 比较 RobustScaler 与其他缩放器。
0.17 新版功能.
更多信息请参阅 用户指南。
- 参数
- with_centeringbool, 默认=True
如果为 True,则在缩放之前将数据居中。这将在尝试对稀疏矩阵进行
transform()
时引发异常,因为将它们居中需要构建一个密集矩阵,这在常见用例中可能会太大而无法装入内存。- with_scalingbool, 默认=True
如果 True,将数据缩放到四分位距。
- 分位数范围tuple (q_min, q_max), 0.0 < q_min < q_max < 100.0, 默认值=(25.0, 75.0)
用于计算 scale_ 的分位数范围。默认情况下,这等于 IQR,即 q_min 是第一个分位数,q_max 是第三个分位数。
0.18 新版功能.
- 复制bool, 默认=True
如果 False,尝试避免复制并进行原地缩放。这并不保证总是原地工作;例如,如果数据不是 NumPy 数组或 scipy.sparse CSR 矩阵,仍然可能返回一个副本。
- unit_variancebool, 默认=False
如果 True,将数据缩放,使得正态分布的特征具有1的方差。通常,如果标准正态分布的 q_max 和 q_min 的x值之间的差异大于1,数据集将被缩小。如果小于1,数据集将被放大。
0.24 新版功能.
- 属性
- center_浮点数数组
训练集中每个特征的中位数值。
- scale_浮点数数组
训练集中每个特征的(缩放后的)四分位距。
0.17 新版功能: scale_ 属性。
- n_features_in_整数
在 拟合 过程中看到的特征数量。
0.24 新版功能.
- feature_names_in_ : 形状为 (n_features_in_,) 的 ndarray形状为的 ndarray
在 拟合 过程中看到的特征名称。仅当 X 的所有特征名称均为字符串时定义。
1.0 新版功能.
参见
robust_scale
不使用估计器API的等效功能。
sklearn.decomposition.PCA
进一步通过设置 ‘whiten=True’ 来消除特征之间的线性相关性。
注释
https://en.wikipedia.org/wiki/Median https://en.wikipedia.org/wiki/Interquartile_range
示例
>>> from sklearn.preprocessing import RobustScaler >>> X = [[ 1., -2., 2.], ... [ -2., 1., 3.], ... [ 4., 1., -2.]] >>> transformer = RobustScaler().fit(X) >>> transformer RobustScaler() >>> transformer.transform(X) array([[ 0. , -2. , 0. ], [-1. , 0. , 0.4], [ 1. , 0. , -1.6]])
方法
fit
(X[, y])计算用于缩放的中位数和分位数。
fit_transform
(X[, y])拟合数据,然后进行转换。
get_feature_names_out
([input_features])获取转换后的输出特征名称。
get_metadata_routing
()获取此对象的元数据路由。
get_params
([deep])获取此估计器的参数。
inverse_transform
(X)将数据缩减回原始表示形式
set_output
(*[, transform])设置输出容器。
set_params
(**params)设置此估计器的参数。
transform
(X)中心化和缩放数据。