熊猫,选择一个群体的第一个观察和排序

时间:2016-03-17 16:40:21

标签: python pandas

熊猫新手,并试图变得更好。我想group_by“id”列,然后order_by“col2”然后“col3”,然后进行顶部观察。 提前致谢

  In[6]:df_selection
  Out[6]:
            id         col2         col3
  0         1           2            2 
  1         2           3            1 

所需:

webdriver-manager start

1 个答案:

答案 0 :(得分:1)

执行此操作的一种非常简短的方法是按这些列进行排序,分组并获取每个组的第一个:

>>> df.sort_values(by=['col2', 'col3']).groupby('id').first()
    col2    col3
id      
1   2   2
2   3   1

要获得确切的输出作为您的问题,只需重置索引:

>>> df.sort_values(by=['col2', 'col3']).groupby('id').first().reset_index()
    id  col2    col3
0   1   2   2
1   2   3   1