首页 > 解决方案 > 如何在时间序列的整个持续时间内找到最大的观察差距。使用熊猫

问题描述

我有一个这样的数据框,

date         value
2017-01-02  -0.665575
2017-01-02  2.850187
2017-01-03  6.035269
2017-01-03  -0.738031
2017-01-06  -0.330992

试图在时间序列的整个持续时间内找到最大的观察间隔(日期之间的最大间隔)。

我尝试pandas.rolling了窗口,我不确定如何应用该方法。

请帮忙。

标签: pythonpandasrolling-computation

解决方案


您可以使用Series.diff,这将为您提供样本之间的天数,并采用max

df.date.diff().max()
# Timedelta('3 days 00:00:00')

如果你想要天数:

df.date.diff().max().days
# 3

如果日期不按顺序开头DataFrame.sort_values

df.sort_values('date').date.diff().max()

推荐阅读