2015-02-23 47 views
2

在NumPy中R的filter的模拟是什么?R的`过滤器'的NumPy模拟

我有下述R代码:

f <- rep(1/9, 9) 
smth_x <- filter(x, f, sides=2) 

哪里x是一些1-d的时间序列矢量,其可以含有nan的。

如何使用NumPy执行相同的操作? (或任何其他python库)

+1

注意,'filter'是在'dplyr'包 - 而不是基础R – 2015-02-23 21:52:58

+0

其实,我错了。 *在dplyr中有一个'filter',但现在我再次看到OP正在寻找一个卷积函数('stats :: filter')。 – 2015-02-24 17:16:25

回答

2

我认为scipy filter functions做你想做的,特别是lfilter。从this HOWTO状况:

import numpy, scipy.signal 
taps = numpy.repeat(1.0/9, 9) 
smoothed_x = scipy.signal.lfilter(taps, 1.0, x) 
+1

你可能应该扩大你的答案 - 只有链接的问题已被弃用。 – 2015-02-23 21:52:41

+0

谢谢,现在所有的设定我想 – sharshofski 2015-02-24 14:13:26