![](/img/trans.png)
[英]Group BY based on one column and get unique and sum of other columns pandas
[英]group by count and sum based on particular column in pandas dataframe in separate column along with other columns
我有一個數據幀(df):
A B C D E F
A1 B1 c 10 E1 F1
A2 B2 c 50 E2 F2
A3 B3 c 20 E2 F3
A4 B4 c 30 E1 F4
A5 B5 c 40 E3 F5
輸出應該是這樣的;
df:
A B C D E F count sum
A1 B1 c 10 E1 F1 2 40
A2 B2 c 50 E2 F2 2 70
A3 B3 c 20 E2 F3 2 70
A4 B4 c 30 E1 F4 2 40
A5 B5 c 40 E3 F5 1 40
根據E列計算和計算。
我試過了 :
df.groupby('E').agg(['count','sum'])
我只得到計數和總和列而不是其他列的df
。 請建議解決方案。
試試這樣:
df['count'] = df.groupby('E')['E'].transform('count')
df['sum'] = df.groupby('E')['D'].transform('sum')
輸出:
A B C D E F count sum
0 A1 B1 c 10 E1 F1 2 40
1 A2 B2 c 50 E2 F2 2 70
2 A3 B3 c 20 E2 F3 2 70
3 A4 B4 c 30 E1 F4 2 40
4 A5 B5 c 40 E3 F5 1 40
我無法理解您的數據,但您想要做的是:
df.groupby('E').agg({'column1': 'count', 'column2': 'sum'})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.