Oft sind Sie daran interessiert, eine oder mehrere Zeichenfolgenspalten in einem Pandas-DataFrame in Float-Spalten zu konvertieren. Glücklicherweise ist dies mit der Funktion astype() einfach zu bewerkstelligen.
Dieses Tutorial zeigt mehrere …
Oft möchten Sie einen Pandas-DataFrame nach einer oder mehreren Spalten sortieren. In diesem Tutorial wird erklärt, wie Sie dies mit der pandas sort_values- Funktion tun.
Angenommen, wir haben den folgenden Pandas DataFrame mit 10 Zeilen und 4 Spalten:
import pandas as pd
import numpy as np
#Dataframe erstellen
df = pd.DataFrame({'player': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'],
                   'points': [25, 20, 14, 16, 27, 20, 12, 15, 14, 19],
                   'assists': [5, 7, 7, 8, 5, 7, 6, 9, 9, 5],
                   'rebounds': [np.nan, 8, 10, 6, 6, 9, 6, 10, 10, 7]})
df
    player  points  assists rebounds
0   A   25  5   NaN
1   B   20  7   8
2   C   14  7   10
3   D   16  8   6
4   E   27  5   6
5   F   20  7   9
6   G   12  6   6
7   H   15  9   10
8   I   14  9   10
9   J   19  5   7
Beispiel 1: Nach einer Spalte aufsteigend sortieren.
Der folgende Codeausschnitt zeigt, wie Sie den DataFrame nach einer Spalte in aufsteigender Reihenfolge sortieren:
#sortieren nach Assists vom kleinsten zum größten
df.sort_values(by=['assists'])
    player  points  assists rebounds
0   A   25  5   NaN
4   E   27  5   6.0
9   J   19  5   7.0
6   G   12  6   6.0
1   B   20  7   8.0
2   C   14  7   10.0
5   F   20  7   9.0
3   D   16  8   6.0
7   H   15  9   10.0
8   I   14  9   10.0
Beispiel 2: Nach einer Spalte absteigend sortieren.
Der folgende Codeausschnitt zeigt, wie Sie den DataFrame nach einer Spalte in aufsteigender Reihenfolge sortieren:
#sortieren nach Rebounds vom größten zum kleinsten
df.sort_values(by=['rebounds'], ascending=False)
    player  points  assists rebounds
2   C   14  7   10.0
7   H   15  9   10.0
8   I   14  9   10.0
5   F   20  7   9.0
1   B   20  7   8.0
9   J   19  5   7.0
3   D   16  8   6.0
4   E   27  5   6.0
6   G   12  6   6.0
0   A   25  5   NaN
Beachten Sie, dass beim Sortieren nach einer Zeichenspalte die Zeilen ascending=False in umgekehrter alphabetischer Reihenfolge sortiert werden:
#Nach Zeichenspalte sortieren
df.sort_values(by=['player'], ascending=False)
    player  points  assists rebounds
9   J   19  5   7.0
8   I   14  9   10.0
7   H   15  9   10.0
6   G   12  6   6.0
5   F   20  7   9.0
4   E   27  5   6.0
3   D   16  8   6.0
2   C   14  7   10.0
1   B   20  7   8.0
0   A   25  5   NaN
Beispiel 3: Sortieren nach mehreren Spalten.
Der folgende Codeausschnitt zeigt, wie der DataFrame nach mehreren Spalten sortiert wird, jeweils in aufsteigender Reihenfolge:
#sort by assists ascending, then rebounds ascending
df.sort_values(by=['assists', 'rebounds'])
    player  points  assists rebounds
4   E   27  5   6.0
9   J   19  5   7.0
0   A   25  5   NaN
6   G   12  6   6.0
1   B   20  7   8.0
5   F   20  7   9.0
2   C   14  7   10.0
3   D   16  8   6.0
7   H   15  9   10.0
8   I   14  9   10.0
Beachten Sie, dass Sie auch eine Spalte aufsteigend und eine andere absteigend sortieren können, indem Sie mehrere Argumente an ascending übergeben:
#sort by assists ascending, then rebounds descending
df.sort_values(by=['assists', 'rebounds'], ascending=[True, False])
player  points  assists rebounds
9   J   19  5   7.0
4   E   27  5   6.0
0   A   25  5   NaN
6   G   12  6   6.0
2   C   14  7   10.0
5   F   20  7   9.0
1   B   20  7   8.0
3   D   16  8   6.0
7   H   15  9   10.0
8   I   14  9   10.0
Beispiel 4: Sortieren Sie zuerst NaNs.
Standardmäßig setzt pandas NaNs an letzter Stelle, aber Sie können angeben, dass NaNs zuerst platziert werden sollen:
#sort by assists ascending, then rebounds descending
df.sort_values(by=['rebounds'], na_position='first')
    player  points  assists rebounds
0   A   25  5   NaN
3   D   16  8   6.0
4   E   27  5   6.0
6   G   12  6   6.0
9   J   19  5   7.0
1   B   20  7   8.0
5   F   20  7   9.0
2   C   14  7   10.0
7   H   15  9   10.0
8   I   14  9   10.0
Die vollständige Dokumentation zur Funktion sort_values finden Sie hier.
Oft sind Sie daran interessiert, eine oder mehrere Zeichenfolgenspalten in einem Pandas-DataFrame in Float-Spalten zu konvertieren. Glücklicherweise ist dies mit der Funktion astype() einfach zu bewerkstelligen.
Dieses Tutorial zeigt mehrere …
Oft sind Sie daran interessiert, die Werte einer Variablen in Python in „Bins“ zu platzieren. Glücklicherweise ist dies mit der Funktion numpy.digitize(), die die folgende Syntax verwendet, einfach zu …