【发布时间】:2021-12-14 13:42:53
【问题描述】:
我正在努力尝试将包含多个日期时间列的数据框转换为具有日期范围的版本。
一个较小的例子看起来有点像这样:
所以来自:
key date_upgrade1 date_upgrade2
0 key1 2020-07-31 2020-08-31
1 key2 2020-05-31 NaT
到:
month key upgrade1 upgrade2
0 2020-06-01 key1 0 0
1 2020-07-01 key1 0 0
2 2020-08-01 key1 1 0
3 2020-09-01 key1 1 1
4 2020-06-01 key2 1 0
5 2020-07-01 key2 1 0
6 2020-08-01 key2 1 0
7 2020-09-01 key2 1 0
如果升级尚未完成,则升级 1 和升级 2 为“0”,如果已执行升级,则为“1”。
其实我现在很迷茫。我设法创建了空的 date_range 数据框。但我不确定如何为多个键复制它并将升级日期后的所有值更改为 1。
感谢任何帮助。
【问题讨论】:
-
为什么
key2会延长到 9 月,而原始框架中的最新日期是 5 月 31 日,这会变成 6 月 1 日?另外,为什么upgrade1对于 7 月到 9 月的日期 key2 为 true? -
好问题,我真的没有说清楚第二个DataFrame中的“0”和“1”到底是什么意思。第二个 DataFrame 告诉我是否已经执行了升级。所以这些升级是一次性事件。
标签: python pandas dataframe datetime pandas-resample