问题描述
我有一组数据,我想在其中填写特定范围的缺失日期,并且这些日期的格式应为period [D](我认为是周期类型)。
数据集如下:
Date value
2020-05-01 8.2
2020-07-15 8.3
2020-07-23 8.4
我的目标是填补2020年7月15日至2020年7月18日之间的日期差距,并且填写的“值”应为“ na”或“ NAN”。我尝试使用reindex。
我首先使用
将数据集的periodIndex转换为时间戳记df.index = pd.PeriodIndex.to_timestamp(df.index)
我做了以下事情:
idx = pd.date_range('2020-07-16','2013-07-22')
df = df['value']
df1 = df.reindex(idx,fill_value=0)
df1
但是重新索引显示了以下结果:
Date value
2020-07-16 0
2020-07-17 0
2020-07-18 0
2020-07-19 0
2020-07-20 0
2020-07-21 0
但是我想要的输出是:
Date value
2020-05-01 8.2
2020-07-15 8.3
2020-07-16 0
2020-07-17 0
2020-07-18 0
2020-07-19 0
2020-07-20 0
2020-07-21 0
2020-07-23 8.4
有人对哪里出了问题有任何想法吗?
解决方法
请尝试重新连接,而不是重新编制索引
df = pd.concat([df,pd.DataFrame(0,index=pd.date_range('2020-07-16','2013-07-22'))]
).sort_index()