Ich habe 3 Spalten in einem Datenrahmen, wie arbeiten:mit groupby mehr Spalten in Python
User_ID, Product_Category_1 und entsprechenden Kaufbetrag.
Ich versuche, basierend auf User_ID und Product_Category_1 zu gruppieren und den Durchschnitt des Kaufbetrags auszuwählen.
So Ausgang Datenrahmen wird: User_ID, Product_Category_1 und Avg_Purchase.
Dies ist für mich nicht funktioniert:
x=train_bk.groupby(["User_ID","Product_Category_1"],as_index=False)['Purchase'].transform('mean')
Das ist mir eine Reihe des Mittelwert des Kaufs für jede Zeile gibt. Allerdings brauche ich nur die einzigartigen User_ID und Product_Category_1 Kombination
x1 = train_bk.select(Average(train_bk.User_ID), train_bk.Product_Category_1,
group_by=(train_bk.User_ID,train_bk.Product_Category_1))
ich die von SQL-Paket versucht zu halten. Es wird jedoch ein Fehler ausgegeben: "name 'Average' ist nicht definiert". Außerdem gibt es ein gutes Paket in Python, das eine SQL-Syntax ähnlich wie Teradata oder MYSQL hat.