在python熊猫中的组内过滤

时间:2018-07-20 14:23:56

标签: python pandas filter

我有一个数据集,例如:

 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

这可以轻松实现吗?

1 个答案:

答案 0 :(得分:1)

首先仅过滤a col3,然后过滤groupbyfirst

df[df.col1=='a'].groupby('id').first()

    index   col1    col2    col3
id              
1   1                          a    
2   4                          a