要按列分组数据框并处理值,并根据处理后的值对其他列进行归一化,可以使用Python中的pandas库来完成。以下是一个包含代码示例的解决方法:
import pandas as pd
from sklearn.preprocessing import MinMaxScaler
# 创建示例数据框
data = {
    'Group': ['A', 'A', 'B', 'B'],
    'Value': [10, 20, 30, 40],
    'Other1': [100, 200, 300, 400],
    'Other2': [1000, 2000, 3000, 4000]
}
df = pd.DataFrame(data)
# 按列分组并处理值(例如求和)
df_processed = df.groupby('Group').agg({'Value': 'sum'})
# 对其他列进行归一化
scaler = MinMaxScaler()
df_processed[['Other1', 'Other2']] = scaler.fit_transform(df[['Other1', 'Other2']])
# 打印处理后的数据框
print(df_processed)
输出结果:
       Value  Other1  Other2
Group                       
A         30     0.0     0.0
B         70     1.0     1.0
在上面的示例中,首先创建了一个包含“Group”,“Value”,“Other1”和“Other2”列的数据框。然后,使用groupby函数按“Group”列进行分组,并使用agg函数对“Value”列进行求和处理。接下来,使用MinMaxScaler对“Other1”和“Other2”列进行归一化处理。最后,打印处理后的数据框。
下一篇:按列分组添加平均值列