[英]Pandas reindex to fill date index
如何重新reindex
此 df 以填充缺失的日期。
query min max mean
DATE
2020-07-04 kabel 573 838 666.547619
2020-07-13 kabel 681 681 681.000000
2020-07-15 kabel 583 738 654.565217
作为 output 我想得到
query min max mean
DATE
2020-07-04 kabel 573 838 666.547619
2020-07-05 kabel None None None
... ... ... ... ...
2020-07-12 kabel None None None
2020-07-13 kabel 681 681 681.000000
2020-07-15 kabel 583 738 654.565217
使用pd.to_datetime
将 dataframe 的索引转换为DatetimeIndex
,然后使用DataFrame.asfreq
重新索引 dataframe 在query
频率列中使用Series.ffill
:forward fillf 与daily
频率列。
df.index = pd.to_datetime(df.index)
df = df.asfreq('D').assign(query=lambda x: x['query'].ffill())
结果:
print(df)
query min max mean
DATE
2020-07-04 kabel 573.0 838.0 666.547619
2020-07-05 kabel NaN NaN NaN
2020-07-06 kabel NaN NaN NaN
2020-07-07 kabel NaN NaN NaN
2020-07-08 kabel NaN NaN NaN
2020-07-09 kabel NaN NaN NaN
2020-07-10 kabel NaN NaN NaN
2020-07-11 kabel NaN NaN NaN
2020-07-12 kabel NaN NaN NaN
2020-07-13 kabel 681.0 681.0 681.000000
2020-07-14 kabel NaN NaN NaN
2020-07-15 kabel 583.0 738.0 654.565217
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.