So führen sie eine datengruppierung in python durch: mit beispielen
Sie können die folgende grundlegende Syntax verwenden, um eine Datengruppierung für einen Pandas-DataFrame durchzuführen:
import pandas as pd #perform binning with 3 bins df[' new_bin '] = pd. qcut (df[' variable_name '], q= 3 )
Die folgenden Beispiele zeigen, wie diese Syntax in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' points ': [4, 4, 7, 8, 12, 13, 15, 18, 22, 23, 23, 25],
' assists ': [2, 5, 4, 7, 7, 8, 5, 4, 5, 11, 13, 8],
' rebounds ': [7, 7, 4, 6, 3, 8, 9, 9, 12, 11, 8, 9]})
#view DataFrame
print (df)
points assists rebounds
0 4 2 7
1 4 5 7
2 7 4 4
3 8 7 6
4 12 7 3
5 13 8 8
6 15 5 9
7 18 4 9
8 22 5 12
9 23 11 11
10 23 13 8
11 25 8 9
Beispiel 1: Stammdatengruppierung durchführen
Der folgende Code zeigt, wie eine Datengruppierung für die Variable „points“ mithilfe der Funktion qcut() mit bestimmten Bruchmarken durchgeführt wird:
#perform data binning on variable points
df[' points_bin '] = pd. qcut (df[' points '], q= 3 )
#view updated DataFrame
print (df)
points assists rebounds points_bin
0 4 2 7 (3,999, 10,667]
1 4 5 7 (3,999, 10,667]
2 7 4 4 (3,999, 10,667]
3 8 7 6 (3,999, 10,667]
4 12 7 3 (10,667, 19,333]
5 13 8 8 (10,667, 19,333]
6 15 5 9 (10,667, 19,333]
7 18 4 9 (10,667, 19,333]
8 22 5 12 (19.333, 25.0]
9 23 11 11 (19.333, 25.0]
10 23 13 8 (19.333, 25.0]
11 25 8 9 (19.333, 25.0]
Beachten Sie, dass jede Zeile im Datenrahmen basierend auf dem Wert der Punktspalte in eine von drei Gruppen eingeordnet wurde.
Wir können die Funktion value_counts() verwenden, um herauszufinden, wie viele Zeilen in jedem Bin platziert wurden:
#count frequency of each bin
df[' points_bin ']. value_counts ()
(3,999, 10,667] 4
(10.667, 19.333] 4
(19.333, 25.0] 4
Name: points_bin, dtype: int64
Wir können sehen, dass jeder Behälter 4 Beobachtungen enthält.
Beispiel 2: Daten-Clustering mit bestimmten Quantilen durchführen
Wir können auch Daten-Clustering mithilfe spezifischer Quantile durchführen:
#perform data binning on variable points with specific quantiles
df[' points_bin '] = pd. qcut (df[' points '], q=[0, .2, .4, .6, .8, 1])
#view updated DataFrame
print (df)
points assists rebounds points_bin
0 4 2 7 (3.999, 7.2]
1 4 5 7 (3.999, 7.2]
2 7 4 4 (3.999, 7.2]
3 8 7 6 (7.2, 12.4]
4 12 7 3 (7.2, 12.4]
5 13 8 8 (12.4, 16.8]
6 15 5 9 (12.4, 16.8]
7 18 4 9 (16.8, 22.8]
8 22 5 12 (16.8, 22.8]
9 23 11 11 (22.8, 25.0]
10 23 13 8 (22.8, 25.0]
11 25 8 9 (22.8, 25.0]
Beispiel 3: Führen Sie eine Datengruppierung mit Beschriftungen durch
Wir können auch eine Datengruppierung mithilfe spezifischer Quantile und Labels durchführen:
#perform data binning on points variable with specific quantiles and labels
df[' points_bin '] = pd. qcut (df[' points '],
q=[0, .2, .4, .6, .8, 1],
labels=[' A ',' B ',' C ',' D ',' E '])
#view updated DataFrame
print (df)
points assists rebounds points_bin
0 4 2 7 A
1 4 5 7 A
2 7 4 4 A
3 8 7 6 B
4 12 7 3 B
5 13 8 8 C
6 15 5 9 C
7 18 4 9 D
8 22 5 12 D
9 23 11 11 E
10 23 13 8 E
11 25 8 9 E
Beachten Sie, dass jeder Zeile basierend auf dem Punktspaltenwert ein Abschnitt zugewiesen wurde und die Abschnitte mit Buchstaben beschriftet wurden.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in Pandas ausführen:
Pandas: So verwenden Sie die Funktion value_counts()
Pandas: So erstellen Sie eine Pivot-Tabelle mit der Anzahl der Werte
Pandas: So zählen Sie Vorkommen eines bestimmten Werts in einer Spalte