import pandas as pd
# 创建一个DataFrame示例
df = pd.DataFrame({'ID': ['A', 'B', 'A', 'B', 'C'],
'Col_2': [12, 15, 14, 18, 20],
'Col_3': [1, 2, 3, 4, 5]})
# 按ID分组并找到Col_2中的最大值,同时保留Col_3的值
df_grouped = df.groupby('ID').apply(lambda x: x[x['Col_2']==x['Col_2'].max()][['Col_2', 'Col_3']])
df_grouped = df_grouped.reset_index().drop('level_1', axis=1)
# 打印结果
print(df_grouped)
输出:
ID Col_2 Col_3
0 A 14 3
1 B 18 4
2 C 20 5