【发布时间】:2020-11-03 09:50:18
【问题描述】:
我有一个数据框df:
df =
index date hats
A1 01-01-2020 5
A1 02-01-2020 10
A1 03-01-2020 16
A1 04-01-2020 16
A1 21-01-2020 9
A1 22-01-2020 8
A1 23-01-2020 7
A6 20-03-2020 5
A6 21-03-2020 5
A8 30-07-2020 12
在这里,前四行是连续的天数。我想知道数据框中所有此类连续天的开始日期和结束日期。如果在df 中的一系列明智的A8 索引中只有一天,那么开始日期和结束日期将相同。此外,我还想知道连续几天中df['hats'] 列中的最高值,并在单独的列high_hat 中返回其日期及其日期high_hat_date。如果连续几天有两个或更多相等的高值,则在新列num_hat中写入高值的出现次数,并在high_hat_date中写入第一次出现的日期。
上述数据框的示例输出如下:
index start_date end_date high_hat high_hat_date num_hat
A1 01-01-2020 04-01-2020 16 03-01-2020 2
A1 21-01-2020 23-01-2020 9 21-01-2020 1
A6 20-03-2020 21-03-2020 5 20-03-2020 2
A8 30-07-2020 30-07-2020 12 30-07-2020 1
非常感谢您在这方面的任何帮助。
【问题讨论】:
-
@GustavRasmussen 不。