【发布时间】:2020-12-16 17:40:33
【问题描述】:
我有一系列列表(实际上是 np.arrays),其中的元素是日期。
id
0a0fe3ed-d788-4427-8820-8b7b696a6033 [2019-01-30, 2019-01-31, 2019-02-01, 2019-02-0...
0a48d1e8-ead2-404a-a5a2-6b05371200b1 [2019-01-30, 2019-01-31, 2019-02-01, 2019-02-0...
0a9edba1-14e3-466a-8d0c-f8a8170cefc8 [2019-01-29, 2019-01-30, 2019-01-31, 2019-02-0...
Name: startDate, dtype: object
对于系列中的每个元素(即每个日期列表),我想保留所有日期都是连续的最长子列表。我正在努力以pythonic(简单/高效)的方式来解决这个问题。我能想到的唯一方法是使用多个循环:循环序列值(列表),然后循环列表中的每个元素。然后,我将存储第一个日期和连续天数,如果遇到更长的连续天数,则使用临时值覆盖结果。不过,这似乎效率很低。有更好的方法吗?
【问题讨论】:
-
将日期转换为序数并获得最长的递增子数组。我发布了答案你可以试试
标签: python python-3.x date datetime series