提问者:小点点

使用给定的开始和结束日期对时间序列重新采样


我有一个熊猫数据框df1,索引是稀疏的日期,有两列。我想生成一个新的数据帧df2,其中采样日期(每小时)在给定的开始日期和结束日期之间,包含df1值。

这里是df1

df1:
                     col1   col2
2019-01-01 07:12:00     1      0
2019-01-01 10:25:00     0      1

以下是应在2019-01-01上开始和00:00:00并在12:00:00结束的df2,采样时间为一小时:

df2:
                     col1   col2
2019-01-01 00:00:00     0      0
2019-01-01 01:00:00     0      0
2019-01-01 02:00:00     0      0
2019-01-01 03:00:00     0      0
2019-01-01 04:00:00     0      0
2019-01-01 05:00:00     0      0
2019-01-01 06:00:00     0      0
2019-01-01 07:00:00     1      0
2019-01-01 08:00:00     0      0
2019-01-01 09:00:00     0      0
2019-01-01 10:00:00     0      1
2019-01-01 11:00:00     0      0
2019-01-01 12:00:00     0      0

我尝试使用pandas dataframeresample()函数,但没有成功指定开始和结束日期。


共1个答案

匿名用户

使用pandas。插值。以下是您应该执行的步骤。

1)创建一个要插入新数据的时间戳列表。

2)将时间戳列表追加到数据帧索引。这样,数据框将具有所有必需的索引,但列值将是NAN

3) 使用索引对数据帧进行排序

4) 调用pandas。插值方法以填充中间的值。在此方法中,可以选择不同的参数,如插值类型。有关更多详细信息,请参阅文档