【发布时间】:2021-05-06 16:09:03
【问题描述】:
我试图找出一组日期范围不与更大日期范围重叠的间隙。在下面的示例中,我想找到daterange_1 到daterange_3 不重叠big_daterange 的每个间隙。
目前我已经走到了这一步,但我仍坚持从diff 中提取差距,如果这甚至是解决此问题的最佳方法的话。
import pandas as pd
daterange_1 = pd.date_range("2009-01-01", "2010-01-01")
daterange_2 = pd.date_range("2012-01-01", "2014-01-01")
daterange_3 = pd.date_range("2016-01-01", "2019-01-01")
big_daterange = pd.date_range("2001-01-01", "2021-01-01")
combined = daterange_1.union(daterange_2).union(daterange_3)
# Get the dates in big_daterange that aren't in combined
diff = big_daterange.difference(combined)
我最感兴趣的是如何提取间隙(其中间隙是连续日期时间的日期范围)并创建它们的列表,如下所示:
gaps = [gap_daterange_1, gap_daterange_2, ...]
【问题讨论】:
标签: python pandas datetimeindex