pandas - 每个用户在日期范围内的滚动聚合
问题描述
我有信用卡数据。我需要在特定时间间隔(一周、一个月等)内汇总每个用户的数据。每个用户有多个事务。数据量为 1 亿笔交易。如何以最佳方式执行此聚合操作?
数据看起来像这样
交易编号 | 用户身份 | 日期 | val1 | val2 |
---|---|---|---|---|
1 | 1 | 2020-07-12 | 2 | 7 |
2 | 2 | 2020-07-12 | 3 | 6 |
3 | 3 | 2020-07-12 | 4 | 3 |
4 | 1 | 2020-07-8 | 2 | 8 |
5 | 2 | 2020-06-12 | 5 | 9 |
6 | 7 | 2020-06-12 | 8 | 10 |
每个用户 7 天的滚动聚合为
交易编号 | 用户身份 | 日期 | 7_days_val1_sum | 7_days_val2_sum |
---|---|---|---|---|
1 | 1 | 2020-07-12 | 4 | 15 |
2 | 2 | 2020-07-12 | 3 | 6 |
3 | 3 | 2020-07-12 | 4 | 3 |
4 | 1 | 2020-07-8 | 2 | 8 |
5 | 2 | 2020-06-12 | 5 | 9 |
6 | 7 | 2020-06-12 | 8 | 10 |
同样,我需要针对不同的时间范围执行不同的聚合操作。由于数据非常庞大,我该如何以最佳方式执行此操作?
解决方案
推荐阅读
- java - 在 Android 上启动任何地图应用程序
- java - 快速排序算法修改
- ios - AdMob 通过 Test Flight 进行测试和构建,而不是来自 App Store?
- python - 超级缩减字符串 python
- c++ - 计算用箭头和鼠标移动的对象
- php - 为附加整数的配置文件用户名编写 .htaccess
- java - SocketIO Java 客户端通过 NodeJS 的快速 Web 服务器获取发出的数据
- python-xarray - dataset.assign_attrs() 例子?
- git - 新的 VSTS Git 私有存储库
- typescript - 无法为类型创建键入的快捷方式