Pandas Summe der Doppelten Parametern
Ich bin mit Pandas zu manipulieren, um eine csv-Datei mit mehreren Zeilen und Spalten, die wie folgt aussieht
Fullname Amount Date Zip State .....
John Joe 1 1/10/1900 55555 Confusion
Betty White 5 . . Alaska
Bruce Wayne 10 . . Frustration
John Joe 20 . . .
Betty White 25 . . .
Ich möchte erstellen Sie eine neue Spalte mit dem Titel "Total" mit einer Summe von Betrag für jede person. (Identifiziert durch fullname und zip). Ich habe Schwierigkeiten bei der Suche nach der richtigen Lösung.
Let ' s just call my csv-import csvfile. Hier ist, was ich habe.
import Pandas
df = pandas.read_csv('csvfile.csv', header = 0)
df.sort(['fullname'])
Ich glaube, ich habe zu verwenden, die iterrows zu tun, was ich will, als ein Objekt. Das problem mit Drop-Dubletten, ist, dass ich Sie verliere den Betrag oder die Menge kann unterschiedlich sein.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, Sie wollen diese:
So
groupby
Gruppe wird durch dieFullname
undzip
Spalten, als Sie erklärt habe, wir rufen Sie danntransform
auf dieAmount
Spalte und berechnen Sie die Gesamtmenge durch die übergabe der stringsum
, dann kommt wieder eine Reihe mit dem index ausrichten, um die ursprünglichedf
haben, können Sie anschließend löschen Sie die Duplikate danach. z.B.Fullname
oderZip
könnte leer sein (Null/Nan)? Ich möchte zur Behandlung einer leeren Namen nur als weiteren eindeutigen Wert gruppiert werden.NaN
nicht Gruppe korrekt müssten Sie füllen diese mitfillna
vor der Gruppierung, leere Saiten sollten noch funktionieren aber