python中的低通线性滤波器

2024-06-18 04:55:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我对过滤时间序列有很多了解,但我确实很难正确理解scipyscipy.signal.filtfilt

特别是它的参数a和b。 例如,我应该如何重现以下过滤器? 即使与其他人一起,LIB也更容易

enter image description here

有人能帮我吗?我给你们一个起点:

np.random.seed(123)
N = 100
rng = pd.date_range('2019-01-01', freq='min', periods=N)
df = pd.DataFrame(np.random.rand(N, 1), index=rng)


Tags: 过滤器参数signallibnp时间序列random
1条回答
网友
1楼 · 发布于 2024-06-18 04:55:01

你说你的图显示了一个低通线性滤波器。我假设这个图显示了aFIR filter的系数。如果是这样,您可以将这些系数作为^{}(或scipy.signal.filtfiltb参数传递,但使用filtfilt和FIR滤波器可能不是您想要的)。将a参数设置为1

您还可以将滤波器应用于具有卷积函数的信号,例如numpy.convolvescipy.signal.convolvescipy.ndimage.convolve1d。看一看文章Applying a FIR Filter(但是请注意,所显示的性能结果并不是最新的,NumPy和SciPy都在继续开发,并且其中讨论的不同方法的相对性能在版本之间可能会发生变化)

相关问题 更多 >