我在我的資料框中使用了“groupby”方法來查找每個位置的總人數。
在“總和”列的右側,我需要添加一列,列出每個位置的所有人員姓名(最好是在單獨的行中,但串列也可以)。
找到總和后,有沒有辦法再次“取消組合”我的資料框?
dataframe.groupby(by=['location'], as_index=False)['people'].agg('sum')
uj5u.com熱心網友回復:
你可以做兩種不同的事情:
groupby.agg(1) 使用和呼叫適當的方法創建一個聚合 DataFrame 。下面的代碼列出了與某個位置對應的所有名稱:
out = dataframe.groupby(by=['location'], as_index=False).agg({'people':'sum', 'name':list})
(2)groupby.transform用于添加一個新列,dataframe該列包含每行按位置的人數總和:
dataframe['sum'] = dataframe.groupby(by=['location'])['people'].transform('sum')
uj5u.com熱心網友回復:
我認為您正在尋找“轉換”?
dataframe.groupby(by=['location'], as_index=False)['people'].transform('sum')
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/459200.html
標籤:Python 熊猫 数据框 熊猫-groupby 聚合
上一篇:基于測驗集中資料組的線性回歸預測
