In diesem Artikel wird zeigen, wie alle oder bestimmte Spalten in einem Pandas -Datenframe mit Python zusammengefasst werden können. Der Datenrahmen.SUM () -Funktion wird zusammen mit einigen hilfreichen Parametern in den zahlreichen Beispielen dieses Tutorials verwendet.
Der 'DataFrame.sum () 'Funktion in Pandas gibt die Gesamtsumme für die angegebene Achse zurück. Wenn die Eingabe eine Achse des Index ist, fügt die Funktion die Werte jeder Spalte einzeln hinzu. Dann erledigt es für jede Spalte dasselbe und gibt eine Serie zurück, die die Summe der Daten/Werte in jeder Spalte speichert. Darüber hinaus unterstützt es die Berechnung der Summe des DataFrame, indem die fehlenden Werte ignoriert werden.
Syntax
Pandas.DataFrame_Object.sum (axis = Keine, Skipna = Keine, Level = Keine, numeric_only = none, min_count = 0, ** kwargs)
Parameter
Zurückkehren
DataFrame (falls festgelegt) oder Serie.
Datenrahmen
Für alle Beispiele werden wir den folgenden "Analyse" -Datenrahmen verwenden. Es hält 12 Zeilen mit 5 Spalten.
Pandas importieren
# Erstellen Sie den DataFrame mithilfe von Listen
Analyse = Pandas.DataFrame ([23, Sravan ', 1000,34,56],
[23, 'Sravan', 700,11,0],
[23, 'Sravan', 20,4,2],
[21, 'Siva', 400,32,45],
[21, 'Siva', 100.456,78],
[23, 'Sravan', 00,90,12],
[21, 'Siva', 400,32,45],
[20, 'Sahaja', 120,1,67],
[23, 'Sravan', 00,90,12],
[22, 'Suryam', 450,76,56],
[22, 'Suryam', 40,0,1],
[22, 'Suryam', 12,45,0]
], Spalten = ['ID', 'Name', 'Punkte 3', 'Punkte', 'Punkte2'])
# Zeigen Sie den DataFrame - Analyse an
print (Analyse)
Ausgang
ID Name Punkte3 Punkte1 Punkte2
0 23 Sravan 1000 34 56
1 23 Sravan 700 11 0
2 23 Sravan 20 4 2
3 21 Siva 400 32 45
4 21 Siva 100 456 78
5 23 Sravan 0 90 12
6 21 Siva 400 32 45
7 20 Sahaja 120 1 67
8 23 Sravan 0 90 12
9 22 Suryam 450 76 56
10 22 Suryam 40 0 1
11 22 Suryam 12 45 0
Hier sind die Spalten "ID", "Punkte", "Punkte2" und "Punkte1" numerisch, und stellen Sie sicher, dass Sie den Datenrahmen für alle Beispiele laden müssen, die wir in diesem Tutorial diskutieren.
Szenario 1: Summe aller Spalten
Wir können SUM () direkt auf den DataFrame anwenden, um die Wertesumme in jeder Spalte zurückzugeben.
Pandas.DataFrame_Object.Summe()
Beispiel
# Geben Sie die Wertsumme in allen Spalten zurück
Print (Analyse.Summe())
Ausgang
ID 264
Nennen Sie Sravansravansravansivasivasravansivasahajasrav…
Punkte3 3242
Punkte1 871
Punkte2 374
Erläuterung
Sie können sehen, dass die Wertsumme in jeder Spalte zurückgegeben wird.
Szenario 2: Summe einer bestimmten Spalte
Wenn Sie die Wertesumme in einer bestimmten Spalte zurückgeben möchten, müssen Sie den Spaltennamen und das DataFrame -Objekt angeben.
Pandas.DataFrame_Object ['Spalte'].Summe()
Beispiel
Lassen Sie uns die Wertesumme in den Spalten "Punkte", "Punkte2" und "Punkte3" getrennt zurückgeben.
# Geben Sie die Wertesumme in Spalte1 Spalte1 zurück
print (Analyse ['Punkte1'].Summe())
# Geben Sie die Wertesumme in Spalte 2 Punkte 2 zurück
print (Analyse ['Punkte2'].Summe())
# Geben Sie die Wertesumme in Spalte3 Spalte3 zurück
print (Analyse ['Punkte3'].Summe())
Ausgang
871
374
3242
Erläuterung
Szenario 3: Summe über Reihen hinweg
Wenn Sie die Wertesumme in jeder Zeile zurückgeben möchten, müssen Sie den Parameter der Achsen in der Funktion sum () angeben und auf 1 einstellen.
Pandas.DataFrame_Object [[Spalte/s…]].sum (axis = 1)
Beispiel
Lassen Sie uns die Wertesumme von 'Punkten', 'Punkten2' und 'Punkten3' über alle Zeilen zurückgeben und das Ergebnis in der Spalte "Summe" speichern.
# Geben Sie die Wertesumme in jeder Zeile zurück
Analyse ['sum'] = Analyse [['Punkte1', 'Punkte2', 'Punkte3']].sum (axis = 1)
print (Analyse)
Ausgang
ID Name Punkte 3 Punkte1 Punkte2 Summe
0 23 Sravan 1000 34 56 1090
1 23 Sravan 700 11 0 711
2 23 Sravan 20 4 2 26
3 21 Siva 400 32 45 477
4 21 Siva 100 456 78 634
5 23 Sravan 0 90 12 102
6 21 Siva 400 32 45 477
7 20 Sahaja 120 1 67 188
8 23 Sravan 0 90 12 102
9 22 Suryam 450 76 56 582
10 22 Suryam 40 0 1 41
11 22 Suryam 12 45 0 57
Erläuterung
Jetzt hält die neue Spalte - 'sum' die Summe von drei Punkten.
Wir können auch über Zeilen hinzufügen, ohne SUM () zu verwenden (). Durch die Verwendung des „+“ -Preibers können wir die vorherige Funktionalität erreichen.
Beispiel
Pandas importieren
# Erstellen Sie den DataFrame mithilfe von Listen
Analyse = Pandas.DataFrame ([23, Sravan ', 1000,34,56],
[23, 'Sravan', 700,11,0],
[23, 'Sravan', 20,4,2],
[21, 'Siva', 400,32,45],
[21, 'Siva', 100.456,78],
[23, 'Sravan', 00,90,12],
[21, 'Siva', 400,32,45],
[20, 'Sahaja', 120,1,67],
[23, 'Sravan', 00,90,12],
[22, 'Suryam', 450,76,56],
[22, 'Suryam', 40,0,1],
[22, 'Suryam', 12,45,0]
], Spalten = ['ID', 'Name', 'Punkte 3', 'Punkte', 'Punkte2'])
# Werte in Spalten 1 und Punkte2 hinzufügen und das Ergebnis in der Spalte '2 hinzugefügt' speichern
Analyse ['2 hinzugefügt'] = Analyse ['Punkte1']+Analyse ['Punkte2']
# Werte in Punkten1, Punkten2 und Punkten2Columns hinzufügen und das Ergebnis in der Spalte '3 hinzugefügt' speichern
Analyse ['3 hinzugefügt'] = Analyse ['Punkte1']+Analyse ['Punkte2']+Analyse ['Punkte3']
print (Analyse)
Ausgang
ID -Name Punkte 3 Punkte1 Punkte2 2 hinzugefügt 3 hinzugefügt 3 hinzugefügt
0 23 Sravan 1000 34 56 90 1090
1 23 Sravan 700 11 0 11 711
2 23 Sravan 20 4 2 6 26
3 21 SIVA 400 32 45 77 477
4 21 Siva 100 456 78 534 634
5 23 Sravan 0 90 12 102 102
6 21 SIVA 400 32 45 77 477
7 20 Sahaja 120 1 67 68 188
8 23 Sravan 0 90 12 102 102
9 22 Suryam 450 76 56 132 582
10 22 Suryam 40 0 1 1 41
11 22 Suryam 12 45 0 45 57
Szenario 4: sum () mit GroupBy ()
Wenn Sie die Wertesumme für einzelne Gruppen zurückgeben möchten, müssen Sie GroupBy () mit sum () verwenden. So wird GroupBy () verwendet, um die Spaltenwerte in einer bestimmten Spalte zu gruppieren, und sum () gibt die Summe in jeder Gruppe zurück.
Pandas.DataFrame_Object.GroupBy ('Grouping_Column').Summe()
Beispiel
Gruppieren wir die Zeilen basierend auf der Spalte Name und geben die Wertesumme in jeder Gruppe für alle Spalten zurück.
Pandas importieren
# Erstellen Sie den DataFrame mithilfe von Listen
Analyse = Pandas.DataFrame ([23, Sravan ', 1000,34,56],
[23, 'Sravan', 700,11,0],
[23, 'Sravan', 20,4,2],
[21, 'Siva', 400,32,45],
[21, 'Siva', 100.456,78],
[23, 'Sravan', 00,90,12],
[21, 'Siva', 400,32,45],
[20, 'Sahaja', 120,1,67],
[23, 'Sravan', 00,90,12],
[22, 'Suryam', 450,76,56],
[22, 'Suryam', 40,0,1],
[22, 'Suryam', 12,45,0]
], Spalten = ['ID', 'Name', 'Punkte 3', 'Punkte', 'Punkte2'])
# Gruppieren Sie die Zeilen basierend auf der Spalte Name und geben Sie die Wertesumme in jeder Gruppe für alle Spalten zurück
Print (Analyse.GroupBy ('Name').Summe())
Ausgang
ID -Punkte3 Punkte1 Punkte2
Name
Sahaja 20 120 1 67
Siva 63 900 520 168
Sravan 115 1720 229 82
Suryam 66 502 121 57
Erläuterung
Es gibt also 4 Gruppen in der Spalte "Name". Für jede Gruppe wird die Summe von ID, Punkten3, Punkten1 und Punkten2 zurückgegeben.
Abschluss
Wir haben versucht, Ihnen beizubringen, wie Sie die Summe über Datenrahmen über die Methode pandas sum () berechnen können. Wir haben in den Beispielen dieses Beitrags die Zeilen- und Spaltenzusammenadung von Werten besprochen. Zusätzlich haben Sie gelernt, wie man Spalten bedingt hinzufügt und wie man die Werte nach der Gruppierung der Spalte des DataFrame zusammenfasst. Möglicherweise können Sie die Spalten des Datenrahmens zusammenfassen oder die Werte in der Spalte DataFrame selbst zusammenfassen.