Nach dem Erstellen Datenrahmen mit einigen duplizierten Zelle Werte in der Spalte Namen zu erstellen:Wie zusammenzufassen und ein Datenrahmen bedeuten einen weiteren Datenrahmen
import pandas as pd
df = pd.DataFrame({'Name': ['Will','John','John','John','Alex'],
'Payment': [15, 10, 10, 10, 15],
'Duration': [30, 15, 15, 15, 20]})
Ich möchte durch die Schaffung von anderen gehen DataFrame, in dem die duplizierten Werte in Name Spalte konsolidiert sind und keine Duplikate hinterlassen. Zur gleichen Zeit möchte ich Summe der Zahlungen, die John gemacht hat. Ich gehe mit:
df_sum = df.groupby('Name', axis=0).sum().reset_index()
Aber da df.groupby('Name', axis=0).sum()
Befehl, um die Summenfunktion für jede Spalte in Datenrahmen gilt die Dauer (des Besuchs in Minuten) -Spalte als gut verarbeitet. Stattdessen möchte ich einen Durchschnittswert für die Spalte Dauer erhalten. So würde ich brauche mean()
Methode zu verwenden, etwa so:
df_mean = df.groupby('Name', axis=0).mean().reset_index()
Aber mit mean()
Funktion der Spalte Zahlung jetzt ist den durchschnittlichen Zahlungswert zeigt John gemacht und nicht die Summe aller Zahlungen .
Wie erstellt man einen Datenrahmen, in dem Duration-Werte die Durchschnittswerte anzeigen, während die Zahlungswerte die Summe anzeigen?
Bitte nicht eingebettete Bilder verwenden Sie; Benutze stattdessen Text. Bilder können nicht kopiert und in eine Konsole eingefügt werden, was bedeutet, dass Sie jeden, der mit Ihrem Beispiel übereinstimmen möchte, bitten, diesen manuell einzugeben. (Siehe [hier] (http://meta.stackoverflow.com/a/285557/487339) für mehr.) – DSM
@DSM, um fair zu sein - ihr allererster Codeblock hat den Code, um den ursprünglichen DataFrame zu erstellen :) (sowie die Befehle, die ausgegeben wurden, um die Ergebnisse zu erstellen ...) –
@NinjaPuppy: das ist nur einer der vielen Gründe, Bilder nicht einzubetten (siehe den Meta-Beitrag, den ich verlinkt habe, zB) – DSM