Heim  >  Artikel  >  Backend-Entwicklung  >  Wie gruppiere und sortiere ich Pandas-Datenrahmen nach zwei Spalten und nehme die obersten Zeilen innerhalb von Gruppen?

Wie gruppiere und sortiere ich Pandas-Datenrahmen nach zwei Spalten und nehme die obersten Zeilen innerhalb von Gruppen?

DDD
DDDOriginal
2024-10-20 17:20:29717Durchsuche

How to Group and Sort Pandas Dataframe by Two Columns and Take Top Rows Within Groups?

Pandas gruppieren und innerhalb von Gruppen sortieren

Bei dieser Frage geht es darum, wie man einen Pandas-Datenrahmen nach zwei Spalten gruppiert und dann die aggregierten Ergebnisse innerhalb dieser Gruppen sortiert. Die gewünschte Ausgabe besteht darin, nur die oberen drei Zeilen jeder Gruppe zu übernehmen.

Eine Möglichkeit, dies zu tun, besteht darin, den Datenrahmen nach den gewünschten Spalten zu sortieren, zu gruppieren und dann den Kopf jeder Gruppe zu übernehmen. Der Code hierfür lautet:

<code class="python">df.sort_values(['job','count'],ascending=False).groupby('job').head(3)</code>

Dies erzeugt die folgende Ausgabe:

   count     job source
4      7   sales      E
2      6   sales      C
1      4   sales      B
5      5  market      A
8      4  market      D
6      3  market      B

Das obige ist der detaillierte Inhalt vonWie gruppiere und sortiere ich Pandas-Datenrahmen nach zwei Spalten und nehme die obersten Zeilen innerhalb von Gruppen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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