Pandas: so sortieren sie werte in einer kreuztabelle
Sie können die folgenden Methoden verwenden, um Zeilen oder Spalten in einer Pandas-Kreuztabelle zu sortieren:
Methode 1: Kreuztabelle nach Zeilenwerten sortieren
p.d. crosstab (df. col1 , df. col2 ). sort_index (axis= 0 , ascending= False )
Methode 2: Kreuztabelle nach Spaltenwerten sortieren
p.d. crosstab (df. col1 , df. col2 ). sort_index (axis= 1 , ascending= False )
Die folgenden Beispiele zeigen, wie jede dieser Methoden in der Praxis mit der folgenden Pandas-Kreuztabelle verwendet wird:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C '], ' position ':['G', 'G', 'F', 'G', 'F', 'F', 'F', 'G', 'G', 'F', 'F'], ' points ': [22, 25, 24, 39, 34, 20, 18, 17, 20, 19, 22]}) #create crosstab to display count of players by team and position my_crosstab = pd. crosstab (df. team , df. position ) #view crosstab print (my_crosstab) FG position team AT 12 B 3 1 C 2 2
Beispiel 1: Kreuztabelle nach Zeilenwerten sortieren
Wir können die folgende Syntax verwenden, um die Kreuztabellenzeilen basierend auf den Teamspaltenwerten in absteigender Reihenfolge (Z bis A) zu sortieren:
#create crosstab with rows sorted from Z to A p.d. crosstab (df. team , df. position ). sort_index (axis= 0 , ascending= False ) position F G team C 2 2 B 3 1 AT 12
Beachten Sie, dass die Kreuztabellenzeilen jetzt nach Teamwerten in umgekehrter alphabetischer Reihenfolge sortiert sind.
Hinweis : Die Funktion crosstab() zeigt die Kreuztabellenzeilenwerte standardmäßig in alphabetischer Reihenfolge (A bis Z) an.
Beispiel 2: Kreuztabelle nach Spaltenwerten sortieren
Wir können die folgende Syntax verwenden, um die Kreuztabellenspalten basierend auf den Teamspaltenwerten in absteigender Reihenfolge (Z bis A) zu sortieren:
#create crosstab with columns sorted from Z to A p.d. crosstab (df. team , df. position ). sort_index (axis= 1 , ascending= False ) G F position team At 2 1 B 1 3 C 2 2
Beachten Sie, dass die Kreuztabellenspalten jetzt nach Positionswerten in umgekehrter alphabetischer Reihenfolge sortiert sind.
Hinweis : Die Funktion crosstab() zeigt die Kreuztabellenspaltenwerte standardmäßig in alphabetischer Reihenfolge (A bis Z) an.
Hinweis : Die vollständige Dokumentation der Pandas- Crosstab() -Funktion finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in Pandas ausführen:
Pandas: So erstellen Sie eine Kreuztabelle mit Prozentsätzen
Pandas: So verwenden Sie aggfunc in der Funktion crosstab()
Pandas: So erstellen Sie ein Balkendiagramm aus einer Kreuztabelle