Extrahieren Sie die Zeile mit dem Maximalwert in einem Gruppen-Pandas-DatenrahmenPython

Python-Programme
Guest
 Extrahieren Sie die Zeile mit dem Maximalwert in einem Gruppen-Pandas-Datenrahmen

Post by Guest »

Eine ähnliche Frage wird hier gestellt:
Python: Abrufen der Zeile mit dem Maximalwert in Gruppen mithilfe von Groupby

Ich benötige jedoch nur einen Datensatz pro Gruppe, auch wenn es mehr als einen Datensatz mit maximalem Wert in dieser Gruppe gibt.

Im Beispiel unten benötige ich einen Datensatz für „s2“. Für mich ist es egal, welches.

Code: Select all

>>> df = DataFrame({'Sp':['a','b','c','d','e','f'], 'Mt':['s1', 's1', 's2','s2','s2','s3'], 'Value':[1,2,3,4,5,6], 'count':[3,2,5,10,10,6]})
>>> df
Mt Sp  Value  count
0  s1  a      1      3
1  s1  b      2      2
2  s2  c      3      5
3  s2  d      4     10
4  s2  e      5     10
5  s3  f      6      6
>>> idx = df.groupby(['Mt'])['count'].transform(max) == df['count']
>>> df[idx]
Mt Sp  Value  count
0  s1  a      1      3
3  s2  d      4     10
4  s2  e      5     10
5  s3  f      6      6
>>>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post