python - Python Pandas:多个聚合 -> 值列表
问题描述
我有一个 DataFrame,其中包含应用于多个列的多个聚合函数的结果,例如:
bar = pd.DataFrame([
{'a': 1, 'b': 2, 'grp': 0}, {'a': 3, 'b': 8, 'grp': 0},
{'a': 2, 'b': 2, 'grp': 1}, {'a': 4, 'b': 5, 'grp': 1}
])
bar.groupby('grp').agg([np.mean, np.std])
a b
mean std mean std
grp
0 2 1.414214 5.0 4.242641
1 3 1.414214 3.5 2.121320
我想将聚合结果组合到列表(或元组):
grp a b
0 [2, 1.414214] [5.0, 4.242641]
1 [3, 1.414214] [3.5, 2.121320]
这样做的正确方法是什么?
提前致谢!
解决方案
如果您必须在列中使用列表。你可以
In [60]: bar.groupby('grp').agg(lambda x: [x.mean(), x.std()])
Out[60]:
a b
grp
0 [2.0, 1.4142135623730951] [5.0, 4.242640687119285]
1 [3.0, 1.4142135623730951] [3.5, 2.1213203435596424]
不建议为 pandas 存储这样的数据。
推荐阅读
- macos - 在 macOS 上重定向端口和 ip
- javascript - 如何在 html 5 画布上使用 FontAwesome 图标
- javascript - Req.Body 未定义 NODE.JS POST 请求
- node.js - 如果阻塞操作被异步处理并导致阻塞进程队列,那么异步编程如何加快速度?
- visual-studio - 如何在不卸载的情况下将 Visual Studio 2017 更新 15.9 降级到 15.5
- lockbox-3 - 使用 TurboPower LickBox 从 p7m 文件中提取内容
- c# - 填充模型中的角色
- angular - 我应该以什么格式将购物车数据存储在本地存储中
- yii2 - Git 实验室准备 CI 脚本以自动部署到 yii2 中的服务器?
- java - 在接下来的 m 个月内生成 n 个约会