在Pandas中规范化数据可以通过对数据的标准化、归一化等方法来实现。下面是一个完整的攻略。
步骤一:导入所需的Python库
首先,我们需要导入以下Python库:Pandas、Numpy、和scikit-learn。
import pandas as pd
import numpy as np
from sklearn import preprocessing
步骤二:创建数据框
我们可以通过 DataFrame 函数创建一个数据框,如下所示:
data = {'score': [234, 24, 14, 27, 68, 67, 74, 33, 73, 77, 57, 29],
'name': ['Peter', 'John', 'Sarah', 'Tom', 'Bob', 'Lucy', 'Jack', 'Amy', 'Vince', 'Harry', 'Molly', 'Betty']}
df = pd.DataFrame(data)
print(df)
输出结果如下:
score name
0 234 Peter
1 24 John
2 14 Sarah
3 27 Tom
4 68 Bob
5 67 Lucy
6 74 Jack
7 33 Amy
8 73 Vince
9 77 Harry
10 57 Molly
11 29 Betty
步骤三:创建规范化器对象
下一步,我们需要创建一个规范化器对象。在本例中,我们将使用MinMaxScaler方法进行数据的归一化。
scaler = preprocessing.MinMaxScaler()
步骤四:使用规范化器对象对数据进行调整
我们可以使用规范化器对象来对数据进行标准化和归一化等处理。在本例中,我们将使用 fit_transform() 方法对数据进行归一化处理,如下所示:
df['score'] = scaler.fit_transform(df[['score']])
步骤五:输出处理后的数据
最后,我们可以输出处理后的数据:
print(df)
输出结果如下:
score name
0 1.000000 Peter
1 0.000000 John
2 0.000000 Sarah
3 0.022222 Tom
4 0.257778 Bob
5 0.251111 Lucy
6 0.295556 Jack
7 0.077778 Amy
8 0.288889 Vince
9 0.311111 Harry
10 0.195556 Molly
11 0.033333 Betty
可以看到,数据框中的分数一列已经被归一化为 0 到 1 的范围内了。