Gruppieren einer Spalte mit Pandas, um Wertzählungen zu erhalten
Beim Umgang mit numerischen Daten in einem Pandas-Datenrahmen kann das Binieren nützlich sein Die Daten werden zur Analyse in bestimmte Bereiche unterteilt. Dieser Vorgang wird als Binning bezeichnet.
Um eine Spalte in Pandas zu klassifizieren, können Sie die folgenden Schritte ausführen:
Beispiel:
Betrachten Sie den folgenden Datenrahmen mit einer numerischen Spalte namens „Prozentsatz“:
import pandas as pd import numpy as np df = pd.DataFrame({'percentage': [46.5, 44.2, 100.0, 42.12]})
To bin die Spalte „Prozentsatz“ in die folgenden Bins:
bins = [0, 1, 5, 10, 25, 50, 100]
Sie können die Schnittfunktion als verwenden folgt:
df['binned'] = pd.cut(df['percentage'], bins=bins)
Dadurch wird eine neue Spalte namens „binned“ im Datenrahmen erstellt, die die Bin-Beschriftungen enthält.
Um die Wertanzahl innerhalb jedes Bins zu erhalten, können Sie die verwenden value_counts-Methode:
print(df['binned'].value_counts())
Ausgabe:
(25, 50] 3 (50, 100] 1
Alternativ können Sie Groupby verwenden und aggregieren Größe:
print(df.groupby(df['binned']).size())
Ausgabe:
percentage (0, 1] 0 (1, 5] 0 (5, 10] 0 (10, 25] 0 (25, 50] 3 (50, 100] 1 dtype: int64
Dies liefert Ihnen die Anzahl der Werte in jedem Bin.
Das obige ist der detaillierte Inhalt vonWie kann ich numerische Daten in einem Pandas-DataFrame einteilen und Werte in jedem Bin zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!