Wie erhalte ich die erste Zeile jeder Gruppe in einem Pandas-DataFrame durch mehrere Spalten?

DDD
Freigeben: 2024-11-10 04:54:02
Original
477 Leute haben es durchsucht

How to Get the First Row of Each Group in a Pandas DataFrame by Multiple Columns?

Erste Zeile jeder Gruppe in einem Pandas-DataFrame nach mehreren Spalten abrufen

In einem Pandas-DataFrame ist es oft notwendig, die erste abzurufen Zeile jeder Gruppe, nachdem der DataFrame basierend auf bestimmten Spalten gruppiert wurde. Diese Aufgabe kann mit den integrierten Methoden von Pandas effizient erledigt werden.

Um dies zu erreichen, kann man die Methode .first() verwenden, um das erste (nicht Null)-Element für jede Gruppe zu erhalten. Die Syntax für first() lautet wie folgt:

df.groupby('group_columns').first()
Nach dem Login kopieren

In Ihrem Beispiel möchten Sie den DataFrame nach den Spalten „id“ und „value“ gruppieren und die erste Zeile jeder Gruppe abrufen. Sie können den folgenden Code verwenden:

df.groupby(['id', 'value']).first()
Nach dem Login kopieren

Dies führt zu folgendem Ergebnis:

id value
1 first
2 first
3 first
4 second
5 first
6 first
7 fourth

Wenn Sie „id“ lieber als Spalte im resultierenden DataFrame haben möchten, können Sie dies tun Setzen Sie den Index mit reset_index() wie unten gezeigt zurück:

df.groupby(['id', 'value']).first().reset_index()
Nach dem Login kopieren

Die Ausgabe dieser Operation lautet:

id value
1 first
2 first
3 first
4 second
5 first
6 first
7 fourth

Zusätzlich, wenn Sie jeweils die ersten n Zeilen abrufen möchten Gruppe können Sie die Methode .head() anstelle von first() verwenden. Um beispielsweise die ersten beiden Zeilen jeder Gruppe abzurufen, können Sie Folgendes verwenden:

df.groupby('id').head(2).reset_index(drop=True)
Nach dem Login kopieren

Dadurch wird der folgende DataFrame zurückgegeben:

id value
1 first
1 second
2 first
2 second
3 first
3 third
4 second
4 fifth
5 first
6 first
6 second
7 fourth
7 fifth

Das obige ist der detaillierte Inhalt vonWie erhalte ich die erste Zeile jeder Gruppe in einem Pandas-DataFrame durch mehrere Spalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage