Background
sklearn.preprocessing.MinMaxScaler 用于将数据的数值范围变换到指定的范围。
如果原数据
x
∈
[
a
,
b
]
x\in\left[a,b\right]
x∈[a,b],希望变换后
y
(
x
)
∈
[
c
,
d
]
y(x)\in\left[c,d\right]
y(x)∈[c,d],那变换是:
y
(
x
)
=
(
x
−
a
)
⋅
d
−
c
b
−
a
+
c
y(x)=(x-a)\cdot\frac{d-c}{b-a}+c
y(x)=(x−a)⋅b−ad−c+c
Bug
有一次想用它将数据放缩到 [-1, 1],但结果是缩放到了 [-2, 2],后面再做几次就有正常了,不知道为什么。

本文探讨了sklearn.preprocessing.MinMaxScaler在数据预处理中将数据缩放到指定范围的应用,特别关注了一次异常情况,即目标范围设定为[-1,1]时,数据却意外地被缩放到了[-2,2]范围,后续操作恢复正常的现象。
785





