Pandas DataFrame Gruppieren Sie nach zwei Spalten und erhalten Sie Zählungen
Hier ist ein Beispielcode-Schnipsel, der zeigt, wie man die groupby()
-Methode in pandas verwendet, um einen DataFrame nach zwei Spalten zu gruppieren und die Anzahl der Gruppen zu erhalten:
import pandas as pd
# Create a sample DataFrame
df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar',
'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'three',
'two', 'two', 'one', 'three'],
'C': [1, 2, 3, 4, 5, 6, 7, 8],
'D': [10, 20, 30, 40, 50, 60, 70, 80]})
# Group the DataFrame by columns 'A' and 'B'
grouped = df.groupby(['A', 'B']).size().reset_index(name='Counts')
# Print the resulting DataFrame
print(grouped)
Dies gruppiert den DataFrame nach den Spalten 'A' und 'B' und gibt einen neuen DataFrame mit den Anzahlen für jede Gruppe zurück. Der resultierende DataFrame sieht wie folgt aus:
A B Counts 0 bar one 1 1 bar three 1 2 bar two 1 3 foo one 2 4 foo three 1 5 foo two 2
Man kann auch .count()
anstelle von .size()
verwenden, um die Anzahl der nicht-NA/null-Werte in jeder Gruppe zu erhalten.