【发布时间】:2018-11-13 12:13:32
【问题描述】:
我的原始数据框如下所示:
A B C
27/03/2018 u1 Yes
28/03/2018 u2 Yes
02/04/2018 u2 No
04/04/2018 u1 Yes
05/04/2018 u1 No
10/04/2018 u2 Yes
11/04/2018 u1 No
16/04/2018 u2 Yes
13/05/2018 u2 No
我想获得一个新列来执行此操作:在每一行中,它将说明在实际日期之前的 7 天内为 B 中的项目找到了多少“是”。 因此,在这个例子中,它看起来像这样:
A B C D
27/03/2018 u1 Yes 0
28/03/2018 u2 Yes 0
02/04/2018 u2 No 1
04/04/2018 u1 Yes 1
05/04/2018 u1 No 1
10/04/2018 u2 Yes 0
11/04/2018 u1 No 1
16/04/2018 u2 Yes 1
13/05/2018 u2 No 0
我想获得另一列,但前 30 天的情况相同。我猜想弄清楚如何做 7 天会让剩下的事情变得更容易。
P.S :我也想这样做,但使用实际的几周而不是前几天(因此,对于 2018 年 1 月 6 日星期五,我们将考虑 5 月 21 日至 27 日这一周)。
如何做到这一点?
【问题讨论】:
标签: python pandas grouping aggregate pandas-groupby