插值和滤波:
由于是时间序列问题,我将在答案中使用o/p图图像进行解释:
假设我们有如下时间序列的数据:(在x轴上=天数,y=数量)pdDataFrame.set_index('Dates')['QUANTITY'].plot(figsize = (16,6))
我们可以看到时间序列中有一些NaN数据。%nan=19.400%的总数据。现在我们要估算null/nan值。
我将尝试向您显示插值和filna方法的o/p,以在数据中填充Nan值。
插值():
首先我们将使用插值:pdDataFrame.set_index('Dates')['QUANTITY'].interpolate(method='linear').plot(figsize = (16,6))
注:这里没有时间插值法
使用回填方法填充pdDataFrame.set_index('Dates')['QUANTITY'].fillna(value=None, method='backfill', axis=None, limit=None, downcast=None).plot(figsize = (16,6))
使用回填方法fillna()&limit=7
限制:这是要向前/向后填充的最大连续NaN值数。换言之,如果连续的nan数量超过此数量,则只会部分填补空缺。pdDataFrame.set_index('Dates')['QUANTITY'].fillna(value=None, method='backfill', axis=None, limit=7, downcast=None).plot(figsize = (16,6))
我发现fillna函数更有用。但是您可以使用任何一种方法来填充两列中的nan值。
有关这些功能的详细信息,请参阅以下链接: