0
我在數據框中有3列,如下所示:在Python中使用groupby多列
User_ID,Product_Category_1和對應購買金額。
我想根據User_ID和Product_Category_1進行分組,並選擇購買金額的平均值。
因此,輸出數據框將具有:User_ID,Product_Category_1和Avg_Purchase。
這不是爲我工作:
x=train_bk.groupby(["User_ID","Product_Category_1"],as_index=False)['Purchase'].transform('mean')
這給了我一系列的購買各行的平均值。不過,我只需要保留獨特的USER_ID和Product_Category_1組合
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))
這個我試過從SQL包。但它會拋出錯誤:「名稱」平均「未定義」。在Python中有一個很好的包,它的SQL語法類似於Teradata或MYSQL。