gpt4 book ai didi

Python:使用 Pandas 逐列缩放数字

转载 作者:IT老高 更新时间:2023-10-28 22:13:03 26 4
gpt4 key购买 nike

我有一个 Pandas 数据框“df”,我想在其中逐列执行一些缩放。

  • 在“a”列中,我需要最大数字为 1,最小数字为 0,所有其他数字都相应地展开。
  • 但是,在“b”列中,我需要最小数字为 1最大数字为 0,并且所有其他数字都相应地分布。

是否有执行这两个操作的 Pandas 函数?如果没有,numpy 肯定会这样做。

    a    b
A 14 103
B 90 107
C 90 110
D 96 114
E 91 114

最佳答案

这是您可以使用 sklearnpreprocessing 模块的方法。 Sci-Kit Learn 具有许多用于缩放和居中数据的预处理功能。

In [0]: from sklearn.preprocessing import MinMaxScaler

In [1]: df = pd.DataFrame({'A':[14,90,90,96,91],
'B':[103,107,110,114,114]}).astype(float)

In [2]: df
Out[2]:
A B
0 14 103
1 90 107
2 90 110
3 96 114
4 91 114

In [3]: scaler = MinMaxScaler()

In [4]: df_scaled = pd.DataFrame(scaler.fit_transform(df), columns=df.columns)

In [5]: df_scaled
Out[5]:
A B
0 0.000000 0.000000
1 0.926829 0.363636
2 0.926829 0.636364
3 1.000000 1.000000
4 0.939024 1.000000

关于Python:使用 Pandas 逐列缩放数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21764475/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com