Heim >Backend-Entwicklung >Python-Tutorial >Wie führe ich eine mehrspaltige Sortierung in Pandas DataFrames durch?

Wie führe ich eine mehrspaltige Sortierung in Pandas DataFrames durch?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-14 13:31:12242Durchsuche

How Do I Perform Multi-Column Sorting in Pandas DataFrames?

Mehrspaltige Sortierung in Pandas DataFrames

Um einen Pandas DataFrame nach mehreren Spalten zu sortieren, verwenden Sie die Methode sort_values, die ab Version sort ersetzt hat 0.20.0.

Syntax

df.sort_values(['column1', 'column2'], ascending=[True, False])

wobei:

  • ['column1', 'column2']: Liste der Spaltennamen zum Sortieren.
  • [True, False]: Liste der aufsteigenden Flags (True für aufsteigend, False für absteigend).

Beispiel

Betrachten Sie einen DataFrame df mit den Spalten a, b und c. So sortieren Sie df nach b in aufsteigender Reihenfolge und nach c in absteigender Reihenfolge:

df.sort_values(['b', 'c'], ascending=[True, False])

Dadurch werden die Zeilen in df so angeordnet, dass die Werte in Spalte b in aufsteigender Reihenfolge sortiert werden und innerhalb jeder b-Gruppe die Werte in Spalte c werden in absteigender Reihenfolge sortiert.

In-Place-Sortierung

Standardmäßig ändert sort_values ​​den ursprünglichen DataFrame nicht. Um eine In-Place-Sortierung durchzuführen, fügen Sie inplace=True zum Methodenaufruf hinzu:

df.sort_values(['b', 'c'], ascending=[True, False], inplace=True)

Dadurch wird df selbst geändert und durch die sortierte Version ersetzt.

Das obige ist der detaillierte Inhalt vonWie führe ich eine mehrspaltige Sortierung in Pandas DataFrames durch?. 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