小编The*_*lon的帖子

复制所有缺失日期数据帧的前一天行

以下是输入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,ffillreset_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 …

python dataframe pandas

5
推荐指数
1
解决办法
203
查看次数

标签 统计

dataframe ×1

pandas ×1

python ×1