dask_ml.preprocessing.MinMaxScaler

dask_ml.preprocessing.MinMaxScaler

class dask_ml.preprocessing.MinMaxScaler(feature_range=(0, 1), *, copy=True, clip=False)

通过将每个特征缩放到给定范围来变换特征。

该估计器单独缩放和转换每个特征,使其在训练集上处于给定范围内,例如零到一之间。

变换公式如下

X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0))
X_scaled = X_std * (max - min) + min

其中 min, max = feature_range。

这种变换通常用作零均值、单位方差缩放的替代方案。

MinMaxScaler 不会减弱离群值的影响,但它会将其线性缩放到固定范围内,其中出现的最大数据点对应于最大值,最小数据点对应于最小值。有关示例可视化,请参阅 将 MinMaxScaler 与其他缩放器进行比较

更多信息请参阅用户指南

参数
feature_rangetuple (min, max),默认值=(0, 1)

期望的变换后数据范围。

copy布尔型,默认值=True

设置为 False 可执行原地行归一化并避免复制(如果输入已是 numpy 数组)。

clip布尔型,默认值=False

设置为 True 可将保留数据的变换值剪裁到提供的 feature range 内。

0.24 版本新增。

属性
min_形状为 (n_features,) 的 ndarray

每个特征的最小值调整。等同于 min - X.min(axis=0) * self.scale_

scale_形状为 (n_features,) 的 ndarray

每个特征数据的相对缩放。等同于 (max - min) / (X.max(axis=0) - X.min(axis=0))

0.17 版本新增:scale_ 属性。

data_min_形状为 (n_features,) 的 ndarray

数据中看到的每个特征的最小值

0.17 版本新增:data_min_

data_max_形状为 (n_features,) 的 ndarray

数据中看到的每个特征的最大值

0.17 版本新增:data_max_

data_range_形状为 (n_features,) 的 ndarray

数据中看到的每个特征范围 (data_max_ - data_min_)

0.17 版本新增:data_range_

n_features_in_整数

fit 期间看到的特征数量。

0.24 版本新增。

n_samples_seen_整数

估计器处理的样本数量。在新的 fit 调用时会重置,但在 partial_fit 调用之间会递增。

feature_names_in_形状为 (n_features_in_,) 的 ndarray

fit 期间看到的特征名称。仅当 X 的所有特征名称都是字符串时才定义。

1.0 版本新增。

另请参阅

minmax_scale

没有估计器 API 的等效函数。

注意

NaN 被视为缺失值:在 fit 中忽略,在 transform 中保留。

示例

>>> from sklearn.preprocessing import MinMaxScaler
>>> data = [[-1, 2], [-0.5, 6], [0, 10], [1, 18]]
>>> scaler = MinMaxScaler()
>>> print(scaler.fit(data))
MinMaxScaler()
>>> print(scaler.data_max_)
[ 1. 18.]
>>> print(scaler.transform(data))
[[0.   0.  ]
 [0.25 0.25]
 [0.5  0.5 ]
 [1.   1.  ]]
>>> print(scaler.transform([[2, 2]]))
[[1.5 0. ]]

方法

fit(X[, y])

计算用于后续缩放的最小值和最大值。

fit_transform(X[, y])

拟合数据,然后变换数据。

get_feature_names_out([input_features])

获取变换后的输出特征名称。

get_metadata_routing()

获取此对象的元数据路由。

get_params([deep])

获取此估计器的参数。

inverse_transform(X[, y, copy])

根据 feature_range 撤消对 X 的缩放。

partial_fit(X[, y])

在线计算 X 的最小值和最大值,用于后续缩放。

set_inverse_transform_request(*[, copy])

请求传递给 inverse_transform 方法的元数据。

set_output(*[, transform])

设置输出容器。

set_params(**params)

设置此估计器的参数。

set_transform_request(*[, copy])

请求传递给 transform 方法的元数据。

transform(X[, y, copy])

根据 feature_range 缩放 X 的特征。

__init__(feature_range=(0, 1), *, copy=True, clip=False)