如何规范化Pandas DataFrame的列作为机器学习预处理的一部分?

6qqygrtg  于 2023-04-18  发布在  其他
关注(0)|答案(1)|浏览(85)

此问题已在此处有答案

Normalize columns of a dataframe(23答案)
3天前关闭。

上下文

我目前正在为Machine Learning目的预处理数据集。现在,我想normalise所有数值列。我找到了一些解决方案,但没有一个真正模仿我喜欢的行为。
我的目标是按照以下方式对列进行标准化,最低值转换为0,最高值转换为1:

编码

column                  column_normalised
1    10                      0
2    30            ->        1
2    20                      0.5

问题

  • 我怎样才能实现这一目标?
  • 你会将数字编码的类别特征标准化还是保持原样?
gjmwrych

gjmwrych1#

NumPy的interp可能会回答你的第一个问题。

df["column_normalised"] = np.interp(x=df["column"],
                                    xp=(df["column"].min(), df["column"].max()),
                                    fp=(0, 1))

输出:

print(df)

   column  column_normalised
1      10                0.0
2      30                1.0
2      20                0.5

相关问题