Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich eine benutzerdefinierte Sortierung von Spalten in einem Pandas-DataFrame durchführen?
Benutzerdefinierte Sortierung im Pandas-Datenrahmen
In Pandas kann eine benutzerdefinierte Sortierung erreicht werden, um Spalten basierend auf bestimmten Kriterien zu organisieren, z. B. der Gruppierung von Monaten in eine bestimmte Reihenfolge.
Eine Methode zur benutzerdefinierten Sortierung ist die Verwendung eines Wörterbuchs. Wenn Sie beispielsweise über ein Wörterbuch verfügen, das Monatsnamen der gewünschten Sortierreihenfolge zuordnet, können Sie die Spalte wie folgt sortieren:
custom_dict = {'March': 0, 'April': 1, 'Dec': 3} s = df['m'].apply(lambda x: custom_dict[x]) df.sort_values(s)
Dadurch wird die Spalte „m“ basierend auf der in „ custom_dict'. Monaten, die nicht im Wörterbuch enthalten sind, wird ein fehlender Wert (NaN) zugewiesen und am Ende der sortierten Spalte platziert.
Ein eleganterer Ansatz, der in Pandas 0.15 eingeführt wurde, ist die Verwendung kategorialer Reihen. Durch Angabe der gewünschten Sortierreihenfolge beim Konvertieren der Monatsspalte in eine kategoriale Reihe können Sie das gleiche Ergebnis erzielen:
df['m'] = pd.Categorical(df['m'], ["March", "April", "Dec"]) df.sort_values("m")
Kurz gesagt bietet die benutzerdefinierte Sortierung in Pandas Flexibilität beim Gruppieren und Ordnen von Spalten nach bestimmten Kriterien Kriterien, die eine effektive Datenorganisation und -visualisierung ermöglichen.
Das obige ist der detaillierte Inhalt vonWie kann ich eine benutzerdefinierte Sortierung von Spalten in einem Pandas-DataFrame durchführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!