В принципе то же самое, что Выберите первую строку в каждой группе GROUP BY? только в pandas.
df = pd.DataFrame({'A' : ['foo', 'foo', 'foo', 'foo', 'bar', 'bar', 'bar', 'bar'],
'B' : ['3', '1', '2', '4','2', '4', '1', '3'],
})
Сортировка выглядит многообещающе:
df.sort('B')
A B
1 foo 1
6 bar 1
2 foo 2
4 bar 2
0 foo 3
7 bar 3
3 foo 4
5 bar 4
Но тогда сначала не дадут желаемого результата... df.groupby( 'А'). первый()
B
A
bar 2
foo 3