如何计算3个月的最大差额

时间:2019-05-14 10:21:04

标签: python pandas rolling-computation

我有一个这样的数据框,

date 
2017-04-03
2017-04-27
2017-04-30
2017-05-02
2017-05-04
2017-05-31
2017-06-14
2017-07-12
2017-07-17
2017-08-06
2017-08-22
2017-10-16
2017-10-24
2017-11-02
2017-11-27
2017-12-10
2018-02-20
2018-03-05
2018-03-08
2018-03-27
2017-04-02
2017-04-04
2017-04-13
2017-04-18
2017-04-20
2017-04-27
2017-05-02

我试图找出每个月的最大差额。

因此创建一个像这样的新列df['difference']=df.date.diff()

date        difference
2017-04-03  NaT
2017-04-27  24 days
2017-04-30  3 days
2017-05-02  2 days
2017-05-04  2 days
2017-05-31  27 days
2017-06-14  14 days
2017-07-12  28 days
2017-07-17  5 days
2017-08-06  20 days
2017-08-22  16 days
2017-10-16  55 days
2017-10-24  8 days
2017-11-02  9 days
2017-11-27  25 days
2017-12-10  13 days
2018-02-20  72 days
2018-03-05  13 days
2018-03-08  3 days
2018-03-27  19 days
2017-04-02  -359 days
2017-04-04  2 days
2017-04-13  9 days
2017-04-18  5 days
2017-04-20  2 days
2017-04-27  7 days
2017-05-02  5 days

现在我需要找到每3个月的最大差额。

我的代码

df.groupby(df['date'].dt.month//3).apply(lambda x: x['difference'].max())

我会得到什么,

date
0   72 days
1   27 days
2   28 days
3   55 days
4   13 days

我的预期输出是这样的。

27 days
28 days
28 days
28 days
28 days
...
...

请帮助获得我的预期输出。预先感谢。

0 个答案:

没有答案