初学熊猫/ python用户。 我在pandas数据帧中使用24小时数据,但是当天的最后几分钟通常没有数据。
我只需要在每个文件上附加行,直到最后一个时间戳达到23.59,然后用数据向前填充最后几分钟。所以这个:
19-12-2016 00:00 2 0.003232323
...
19-12-2016 23:53 2 0.002822919
19-12-2016 23:54 4 0.002822919
19-12-2016 23:55 1 0.002822919
变为:
19-12-2016 00:00 2 0.003232323
...
19-12-2016 23:53 2 0.002822919
19-12-2016 23:54 4 0.002822919
19-12-2016 23:55 1 0.002822919
19-12-2016 23:56 1 0.002822919
19-12-2016 23:57 1 0.002822919
19-12-2016 23:58 1 0.002822919
19-12-2016 23:59 1 0.002822919
不幸的是,我使用的代码真的很长,我无法确切地指出我可以修改它的确切位置。
答案 0 :(得分:3)
reindex
您的数据为
idx = pd.date_range('2016-12-19', periods=1440, freq='T')
df = df.reindex(idx)
然后使用df.mycol.ffill()
答案 1 :(得分:1)
单帧中多天数据的通用解决方案可能如下所示。获取开始和结束日期,然后reindex
整个框架并填写缺失值。
start = df.index.min().date()
end = df.index.max().date() + pd.Timedelta(1, 'D')
df.reindex(pd.date_range(start, end, freq='T', closed='left')).fillna(method='ffill')