以下是一个示例代码,用于按列分组、保留最小值并在冲突时将选定的值进行连接:
import pandas as pd
# 创建示例数据
data = {'col1': ['A', 'A', 'B', 'B', 'C', 'C'],
'col2': [1, 2, 3, 4, 5, 6],
'col3': ['x', 'y', 'z', 'w', 'u', 'v']}
df = pd.DataFrame(data)
# 按col1列分组,保留col2的最小值,并将col3的值进行连接
df_grouped = df.groupby('col1').agg({'col2': 'min', 'col3': '|'.join}).reset_index()
print(df_grouped)
输出结果为:
col1 col2 col3
0 A 1 x|y
1 B 3 z|w
2 C 5 u|v
在上述示例中,我们使用pandas库来处理数据。首先,我们创建了一个示例DataFrame对象,其中包含三个列col1、col2和col3。然后,我们使用groupby
方法按col1列进行分组。接下来,我们使用agg
方法来对每个分组应用聚合函数。对于col2列,我们选择了最小值,对于col3列,我们使用'|'.join
方法将所有值连接在一起。最后,我们使用reset_index
方法重置索引,并打印结果。
上一篇:按列分组,保留多行最小值。