我有一个如下所示的 pd 数据系列。由于某些原因,没有截至 2018-07-26 13:30:00 ~ 2018-08-03 15:45:00 的数据
13 2018-03-13 16:40:00 12 12.07 0
14 2018-03-13 16:41:00 13 12.07 0
15 2018-03-13 16:42:00 12 12.07 0
…
230000 2018-07-26 13:30:00 45 12.07 0
230001 2018-08-03 15:45:00 30 12.07 0
230002 ....
…
我想用 0 填充这些空白并尝试像这样的“pandas.Series.asfreq”
df1= df.asfreq("T",fill_value=0)
print(df1)
但它给了我一个奇怪的响应,如下所示。
1970-01-01 0 0 0
你能教我如何填写这些空白吗?
最佳答案
IIUC,我相信你需要使用 DataFrame.set_index
首先,将索引设置为 datetime
列。
这是一个基本示例,但您可以将 'datetime_col'
替换为您自己的日期时间列的实际名称:
# If necessary, cast datetime column to correct dtype
# df['datetime_col'] = pd.to_datetime(df['datetime_col'])
df_new = df.set_index('datetime_col').asfreq('T', fill_value=0).reset_index()
关于python - 如何使用 pandas 填充缺失的时间数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55781609/