【发布时间】:2016-01-09 04:26:09
【问题描述】:
我有以下数据库,我想将 PAS_DATE 分组为 3 天,例如从 2015-03-06 到 2015-03-09
PAS_DATE RED_DATE TOT
2015-03-06 2015-03-07 2
2015-03-17 14
2015-12-22 1
2015-03-07 2015-03-08 3
2015-03-19 6
2015-10-14 2
2015-12-07 1
2015-03-08 2015-09-16 8
2015-03-09 2015-03-09 7
2015-03-15 6
2015-03-18 8
2015-04-04 15
2015-04-12 19
2015-05-04 44
2015-08-17 5
2015-09-09 13
2015-12-06 3
2015-12-13 3
2015-03-10 2015-03-10 7
输出应该是:
PAS_DATE RED_DATE TOT
2015-03-09 2015-03-07 2
2015-03-17 14
2015-12-22 1
2015-03-08 3
2015-03-19 6
2015-10-14 2
2015-12-07 1
2015-09-16 8
2015-03-09 7
2015-03-15 6
2015-03-18 8
2015-04-04 15
2015-04-12 19
2015-05-04 44
2015-08-17 5
2015-09-09 13
2015-12-06 3
2015-12-13 3
2015-03-12 2015-03-10 7
有没有办法在 Pandas 或 Python 中执行此代码而无需迭代?
【问题讨论】:
-
没有迭代?你的意思是根本没有任何循环结构?
-
是的,我有一个大数据集,循环结构很慢......
-
一种或另一种方式,您将不得不迭代行来评估数据。循环是任何在集合或编程中工作的核心构造之一。
-
我已经尝试了你有趣的解决方案,但我得到了 df['for_group_by'] = df.PAS_DATE + df['shift'] 的 ITypeError: ufunc add cannot use operands with types dtype('O')和 dtype('
-
我已经更新了我原来的答案。
标签: python python-2.7 python-3.x pandas