python - 具有可变时间窗口的 Pandas groupby 聚合
问题描述
我有一个数据框(df
),如下所示:
month-year name a b c start_date end_date
2018-01 X 2 1 4 2018-01-01 2018-01-31
2018-01 Y 1 0 5 2018-01-01 2018-02-31
2018-01 X 1 6 3 2018-01-01 2018-01-31
2018-01 Y 4 10 7 2018-01-01 2018-02-31
2018-02 X 13 4 2 2018-02-01 2018-02-31
2018-02 Y 22 13 9 2018-01-01 2018-02-31
2018-02 X 3 7 4 2018-02-01 2018-02-31
2018-02 Y 2 15 0 2018-01-01 2018-02-31
我想要groupby
month-year
并name
得到 column 的总和, columna
的平均值和 column 的b
std c
。但是,我希望总和、平均值和标准是滚动/累积数字。最重要的是,我希望滚动/累积数是start_date
and内的滚动/累积数end_date
。
换句话说,我该怎么做才能得到这样的输出?
month-year name a b c
2018-01 X 3 3.5 0.71
Y 5 5 1.41
2018-02 X 16 5.5 1.4
Y 29 9.5 3.86
谢谢你。
解决方案
你可以使用 groupby().agg()
df.groupby(['month-year', 'name']).agg({'a':'sum', 'b':'mean', 'c':'std'})
a b c
month-year name
2018-01-01 X 3 3.5 0.707107
Y 5 5.0 1.414214
2018-02-01 X 16 5.5 1.414214
Y 24 14.0 6.363961
推荐阅读
- javascript - 如何过滤 django x chart.js 图表?未捕获的类型错误
- javascript - @@iterator- Javascript - 它到底是什么?
- bluetooth-lowenergy - 无法检索 iBeacon UUID(ESP32 BLE 扫描仪)
- android - 如何在 ionic 4 上修复 android 版本 9 的 CORS 问题
- python - 不手动输入名称时无法从页面获取源代码
- java - 嵌套异常是 org.springframework.orm.jpa.JpaSystemException: org.hibernate.PersistentObjectException: 分离的实体传递给坚持:
- c - 无法释放结构的数据
- python - selenium python 脚本出现故障(Python Omagle Bot Script)
- node.js - 使用 Heroku 部署 React 应用程序 + 节点服务器
- python - 从字典和python中的列表列表创建字典集