Python 低通butterworth-scipy的问题

Python 低通butterworth-scipy的问题,python,scipy,signal-processing,Python,Scipy,Signal Processing,我用scipy编写了一个低通巴特沃斯滤波器。我有这样的数据,例如-2,-1,0,1,2,但过滤器将其更改为0,-1,2,1,2。有什么好办法吗 def lowPassButterworthDigital(self, signal1 =None, signal2 = None): ''' Digital low-pass Butterworth filter ''' #design filter signals

我用scipy编写了一个低通巴特沃斯滤波器。我有这样的数据,例如-2,-1,0,1,2,但过滤器将其更改为0,-1,2,1,2。有什么好办法吗

    def lowPassButterworthDigital(self, signal1 =None, signal2 = None):
        '''
        Digital low-pass Butterworth filter
        '''
        #design filter
        signals = [signal1, signal2]
        for i in range(len(signals)):
            b,a = signal.butter(2, 0.1, "low", False, "ba")

            if i == 0:
               signal1 = signal.lfilter(b, a, signal1)
           else:
               signal2 = signal.lfilter(b, a, signal2)
        return signal1, signal2

我成功地解决了这个问题。我把滤纸换成了滤纸

def lowPassButterworthDigital(self, signal1 =None, signal2 = None):
    '''
    Digital low-pass Butterworth filter
    '''
    #design filter
    signals = [signal1, signal2]
    print signal1
    print signal2
    for i in range(len(signals)):
        b,a = signal.butter(2, 0.1, "low", False, "ba")

        if i == 0:
            signal11 = signal.filtfilt(b, a, signal1)
            print signal11
        else:
            signal2 = signal.filtfilt(b, a, signal2)
            print signal2


    return signal11, signal2

你觉得它有什么问题?也许一些示例输入、输出会有所帮助?