【发布时间】:2018-02-06 06:10:01
【问题描述】:
我正在尝试过滤具有 3 列的数据框,我想要做的是:按 col1 和 col2 分组并获取 col3 的最大值并获得 col3 的第二个最大值,但将其插入为新的列:第 4 列
我可以使用下面的方法对其进行分组,但不知道如何获得第二个最大值并将其作为另一列插入:
grouped = df.groupby(['COL1', 'COL2']).agg({'COL3': 'max'})
COL1 COL2 COL3
0 A 1 0.2
1 A 1 0.4
3 B 4 0.7
想要的输出:
COL1 COL2 COL3 COL4
0 A 1 0.4 0.2
3 B 4 0.7 0.7
【问题讨论】: