我正在尝试根据一些条件删除重复项。我的数据框看起来像这样:
idx a b c d e f
1 1 ss1 0 25 A B
2 3 ss7 0 25 A B
3 5 ss5 0 12 C D
4 11 im3 0 12 C D
5 5 ss8 0 50 C K
6 9 im8 0 5 F G
7 8 ix6 0 5 F G
如果列 d、e 和 f 的值在数据框中的 subset=['d', 'e', 'f']
中与其他记录匹配,则这些行被视为重复。例如,行1和2是重复的,行3和4是重复的,行6和7是重复的。选择要删除的行基于列 b。
如果重复项(行1和2)的列
b
值都以 ss 开头,则可以删除任何一个如果其中一个重复项以 ss 开头,而另一个以不同格式开头(行3和4),则应保留以 ss 开头的那个。
如果列
b
中的两个重复项都以除 ss 之外的任何内容开头(行6和7),则可以选择任何一个。
因此,预期输出应该类似于:
idx a b c d e f
2 3 ss7 0 25 A B
3 5 ss5 0 12 C D
5 5 ss8 0 50 C K
7 8 ix6 0 5 F G