我有一个熊猫数据框,例如:
ID Group Rank include
1 Group1 1 0
2 Group1 2 1
3 Group1 3 0
4 Group1 4 1
5 Group2 1 0
6 Group2 2 0
7 Group2 3 1
8 Group2 4 1
9 Group2 5 1
我想选择一个满足以下条件的子集: - 组中最多 3 行 - 包括包含 = 1 的所有行(每组不超过 3 个) - 最小化每组的总排名
基本上,我想从每个组中选择 TOP "N" 记录,但是 include=1 的行优先于其余行。
输出数据帧:
ID Group Rank include
1 Group1 1 0
2 Group1 2 1
4 Group1 4 1
7 Group2 3 1
8 Group2 4 1
9 Group2 5 1
我尝试了几种方法,但都没有真正奏效,现在我被卡住了。
请帮忙!