时间序列的简单Python中值过滤器

时间:2015-06-08 18:32:47

标签: python filtering time-series signal-processing noise-reduction

我在日志文件中有一个时间序列,其格式如下(时间戳,值):

1433787443, -60 1433787450, -65 1433787470, -57 1433787483, -70

是否有任何可用的python代码/库将日志文件和窗口大小作为输入,对时间序列应用中值滤波器以消除噪声和异常值,并将滤波后的信号输出到新文件?

1 个答案:

答案 0 :(得分:0)

  1. 使用您喜欢的任何方法加载数据。我看到你的文件可以被视为csv格式,因此你可以使用numpy.genfromtxt('file.csv', delimiter=',')函数。

  2. 使用scipy函数进行中值滤波:scipy.signal.medfilt(data, window_len)。请记住,窗口长度必须是奇数。

  3. 将结果保存到文件中。例如,您可以使用numpy.savetxt('out.csv', data, delimiter=',')函数来执行此操作。