【发布时间】:2021-12-06 02:20:58
【问题描述】:
我有一个这样的df:
>>> df1
col_1 col_2 size_col other_col
0 aaa abc 4 zxc
1 aaa abc 3 xcv
2 aaa abc 1 cvb
3 bbb bbc 7 vbn
4 bbb bbc 3 bnm
5 ccc cbc 1 asd
6 ddd dbc 9 sdf
7 ccc cbc 3 dfg
8 ccc cbc 1 fgh
并且想要这样的 df:
>>> df2
col_1 col_2 size_col other_col
0 aaa abc 4 zxc
3 bbb bbc 7 vbn
6 ddd dbc 9 sdf
7 ccc cbc 3 dfg
说明:
我想全部删除 col_1 和 col_2 具有相似值的位置,并保留所有重复字符串中“size_col”最大的行。因此,从上面的示例中,对于col_1 和col_2 具有aaa 和abc 的行,我需要保留size_col 具有最大价值的行。或者换句话说,我需要按col_1 和col_2 列进行分组,然后对于每个组,只保留other_col 对该组具有最大价值的行。
对于大约 500 万行和 7 列的 df,我如何有效地执行此操作?
【问题讨论】:
标签: python python-3.x pandas data-manipulation