我有一个数据集,例如:
index id col1 col2 col3
1 1 a
2 1 b
3 1 a
4 2 a
5 2 b
6 2 a
我想过滤数据库,以便为每个ID组获取重复项“ a”的第一个值。其余行可以删除。例如,我应该得到:
index id col1 col2 col3
1 1 a
4 2 a
这可以轻松实现吗?
答案 0 :(得分:1)
首先仅过滤a
col3,然后过滤groupby
和first
df[df.col1=='a'].groupby('id').first()
index col1 col2 col3
id
1 1 a
2 4 a