重新采样数据帧,插入 NaN 和 return 数据帧
Resample a dataframe, interpolate NaNs and return a dataframe
我有一个数据框 df
,其中包含 3 小时内的数据:
index , values
2003-01-01 00:00:00, 2.0
2003-01-01 03:00:00, 1.8
2003-01-01 06:00:00, 1.4
2003-01-01 09:00:00, 1.1
....
我想每小时对数据重新采样一次,并线性插入两者之间的缺失值。我可以实现类似的效果,用 .bfill()
填充缺失值,它看起来像这样:
df2 = df.resample('H').bfill()
我试图改变它以完成我的任务如下:
df2 = df.resample('H')
df2.interpolate(method='linear', axis=0, inplace=True)
但是 df2 = df.resample('H')
与 df2 = df.resample('H').bfill()
相比,return 不是数据框对象,而是 pandas.core.resample.DatetimeIndexResampler object
.
你知道我如何进行重采样和插值吗?你还有其他工作吗?发送
我发现,我可以将我的初始方法附加到 .interpolate()
并且它会起作用:
df2 = df.resample('H').interpolate()
df2.interpolate(method='linear', axis=0, inplace=True)
我有一个数据框 df
,其中包含 3 小时内的数据:
index , values
2003-01-01 00:00:00, 2.0
2003-01-01 03:00:00, 1.8
2003-01-01 06:00:00, 1.4
2003-01-01 09:00:00, 1.1
....
我想每小时对数据重新采样一次,并线性插入两者之间的缺失值。我可以实现类似的效果,用 .bfill()
填充缺失值,它看起来像这样:
df2 = df.resample('H').bfill()
我试图改变它以完成我的任务如下:
df2 = df.resample('H')
df2.interpolate(method='linear', axis=0, inplace=True)
但是 df2 = df.resample('H')
与 df2 = df.resample('H').bfill()
相比,return 不是数据框对象,而是 pandas.core.resample.DatetimeIndexResampler object
.
你知道我如何进行重采样和插值吗?你还有其他工作吗?发送
我发现,我可以将我的初始方法附加到 .interpolate()
并且它会起作用:
df2 = df.resample('H').interpolate()
df2.interpolate(method='linear', axis=0, inplace=True)