噪声滤波器(Savitzki Golay)和Interpolation(interp1d)Python

时间:2018-08-21 18:00:05

标签: python pandas filter scipy interpolation

我想知道过滤和插值数据之间有什么区别。

我正在比较

savgol_filter(itp(xx), window_size, poly_order)

itp = interp1d(x,y, kind='nearest')

我了解过滤器可以过滤数据中的噪声,从而使它们更平滑。 但是插值也一样。

我的目的是使数据平滑,从而使数据不断上升。 如果它们从未上升,则仅调整那些破坏它的值。 如果上升=没有调整。 您会建议使用什么? 谢谢!

1 个答案:

答案 0 :(得分:0)

假设您有一系列离散的数据点,例如在特定时间测量。

  • 插值是一种在两次测量之间的某个时间猜测序列值的方法。例如,温度每隔一小时测量一次,但您希望每半小时获取一次温度值。如果数据有噪声,则插值也会有噪声。

  • 过滤是一种减少数据噪声的方法。测量值给出的是实际值加上随机噪声。对于多次测量,假定真实值保持相同,而噪声值将正负变化。因此,通过对足够多的测量结果取平均值,噪声的贡献平均为零。

在数据上拟合模型是从数据中消除噪声的另一种类似方法。实际上,取平均值类似于使用水平直线作为模型拟合数据。进行线性回归可以与任何直线拟合,即找到最能描述数据的直线。

Savitzky-Golay滤波器对数据序列的连续部分(窗口)执行连续拟合,以减少局部噪声。