如何在整个时间序列中找到观测值的最大差距

时间:2019-05-13 15:03:47

标签: python pandas rolling-computation

我有一个这样的数据框,

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窗口,但不确定如何应用该方法。

请帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用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()