So berechnen sie die gesamtzahl der pandas


Sie können die folgenden Methoden verwenden, um eine kumulative Zahl in einem Pandas-DataFrame zu berechnen:

Methode 1: Kumulierte Zählung nach Gruppe

 df[' cum_count '] = df. groupby (' col1 '). cumcount ()

Methode 2: Kumulierte Abrechnung mehrerer Gruppen

 df[' cum_count '] = df. groupby ([' col1 ', ' col2 ']). cumcount ()

Die folgenden Beispiele zeigen, wie jede Methode in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
                   ' position ': ['G', 'G', 'G', 'F', 'G', 'G', 'F', 'F'],
                   ' points ': [14, 22, 25, 34, 30, 12, 10, 18]})

#view DataFrame
print (df)

  team position points
0 AG 14
1 AG 22
2 AG 25
3AF 34
4 BG 30
5 BG 12
6 BF 10
7 BF 18

Beispiel 1: Kumulierte Zählung nach Gruppen bei Pandas

Wir können die folgende Syntax verwenden, um eine neue Spalte namens team_cum_count zu erstellen, die die kumulative Anzahl jedes Teams im DataFrame anzeigt:

 #calculate cumulative count by team
df[' team_cum_count '] = df. groupby (' team '). cumcount ()

#view updated DataFrame
print (df)

  team position points team_cum_count
0 AG 14 0
1 AG 22 1
2 AG 25 2
3 AF 34 3
4 BG 30 0
5 BG 12 1
6 BF 10 2
7 BF 18 3

Die neue Spalte namens team_cum_count enthält die kumulative Anzahl jedes Teams , beginnend mit dem Wert Null.

Wenn Sie möchten, dass die Zählung bei eins beginnt, fügen Sie einfach eins am Ende der Zeile hinzu:

 #calculate cumulative count (starting at 1) by team
df[' team_cum_count '] = df. groupby (' team '). cumcount () + 1

#view updated DataFrame
print (df)

  team position points team_cum_count
0 AG 14 1
1 AG 22 2
2 AG 25 3
3 AF 34 4
4 BG 30 1
5 BG 12 2
6 BF 10 3
7 BF 18 4

Die neue Spalte namens team_cum_count enthält die kumulative Anzahl jedes Teams , beginnend mit dem Wert eins.

Beispiel 2: Berechnen Sie die kumulative Anzahl nach Gruppen in Pandas

Wir können die folgende Syntax verwenden, um eine neue Spalte namens team_pos_cum_count zu erstellen, die die kumulative Anzahl für jedes Team und jede Position im DataFrame anzeigt:

 #calculate cumulative count by team
df[' team_pos_cum_count '] = df. groupby ([' team ', ' position ']). cumcount () 

#view updated DataFrame
print (df)

  team position points team_pos_cum_count
0 AG 14 0
1 AG 22 1
2 AG 25 2
3 AF 34 0
4 BG 30 0
5 BG 12 1
6 BF 10 0
7 BF 18 1

Die neue Spalte namens team_pos_cum_count enthält die kumulative Anzahl jedes Teams und jeder Position , beginnend mit einem Wert von Null.

Hinweis : Die vollständige Dokumentation der Cumcount- Funktion in Pandas finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in Pandas ausführen:

So summieren Sie bestimmte Spalten in Pandas
So summieren Sie Spalten basierend auf einer Bedingung in Pandas
So berechnen Sie eine umgekehrte kumulative Summe in Pandas

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert