python - 根据单独列中的熊猫数据框中的特定列以及其他列按计数和总和进行分组
问题描述
我有一个数据框(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'])
我只得到 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
推荐阅读
- julia - Julia 中的偏导数
- firebase - 尽管 promise 已解决,为什么还要调用 catch 案例?
- angular - Angular - 许多导入/导出模块,安全吗?
- c - 遍历所有可能的字母组合
- c# - 即使我没有用户表并且没有将用户信息存储在数据库中,我是否可以使用 ASP.NET 标识?
- json - 在 Flutter 和 Dart 中从 JSON 解析双精度值
- python - 如何使功能重复?
- ionic3 - 单击ionic3中的单个离子无线电后选择所有无线电?
- python - 如何通过使用 Spark 将 Cassandra 的表作为输入来编写 csv 文件?
- mysql-5.7 - 如何在 MySql 5.7 中完全更新 JSON 列?