【发布时间】:2020-09-01 13:52:17
【问题描述】:
我有一个类似的数据集
Serial A B
1 12
1 31
1
1 12
1 31 203
1 10
1 2
2 32 100
2 32 242
2 3
3 2
3 23 100
3
3 23
我根据 Serial 对数据帧进行分组,并通过df['A_MAX'] = df.groupby('Serial')['A'].transform('max').values 找到每个A 列的最大值,并通过df['A_MAX'] = df['A_MAX'].mask(df['Serial'].duplicated(), '') 保留第一个值
Serial A B A_MAX B_corresponding
1 12 31 203
1 31
1
1 12
1 31 203
1 10
1 2
2 32 100 32 100
2 32 242
2 3
3 2 23 100
3 23 100
3
3 23
现在对于B_corresponding 列,我想获取A_MAX 对应的B 值。我想在A 中找到A_MAX 值,但每组有类似的最大值A 值。附加条件,例如在Serial 2 中,我还希望获得32 之间的最小B 值
【问题讨论】: