以下是输入pandas数据帧的示例:
**LastUpdate** **Whatever** ...
2017-12-30 xxx ...
2017-12-30 yyy ...
2017-12-30 zzz ...
2018-01-01 yyy ...
2018-01-03 zzz ...
Run Code Online (Sandbox Code Playgroud)
这是预期的DF(输出):
**LastUpdate** **Whatever** ...
2017-12-30 xxx ...
2017-12-30 yyy ...
2017-12-30 zzz ...
2017-12-31 xxx ...
2017-12-31 yyy ...
2017-12-31 zzz ...
2018-01-01 yyy ...
2018-01-02 yyy ...
2018-01-03 zzz ...
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,数据中缺少的日期只会复制前一天的行,因此我只是用(所有)前一天的数据填充缺失的日期.问题是每天的行数可能不同,所以这并没有真正帮助.
重要提示:两天之间可能只有一天缺失(可能从2018-01-01到2018-01-05,所以我需要在这两天之间用相同的数据添加所有缺失的天数(具有与2018-01-01完全相同的行数/内容数,是可用数据的最后一天.
我已经做了一些研究并提出了resample,ffill和reset_index方法,但看起来它不适合我的具体情况,因为它需要一个唯一的日期索引,这不是这里的情况,因为一天可能有几行相关.
到目前为止我尝试过的:
df['Last Update'] = pd.to_datetime(df['Last Update'])
df.set_index("Last Update", inplace=True)
dfResult = df.resample('D').ffill().reset_index()
Run Code Online (Sandbox Code Playgroud)
产量cannot …