Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python scipy.signal.lfilter:**ValueError:对于所需阵列,对象深度太小_Python_Matlab_Filter_Scipy - Fatal编程技术网

Python scipy.signal.lfilter:**ValueError:对于所需阵列,对象深度太小

Python scipy.signal.lfilter:**ValueError:对于所需阵列,对象深度太小,python,matlab,filter,scipy,Python,Matlab,Filter,Scipy,我试图将Matlab的fillgaps.m函数移植到Python(3.5)中。但是,我在使用scipy.signal.lfilter时遇到了一个错误,而我在使用Matlab的过滤器时没有遇到这个错误 以下是对Matlab的调用: y = xmean + filter(1, a, zeros(n,1), zi); 下面是Python中的等效调用: y = xmean+ signal.lfilter(1.0, a, np.zeros(num), zi=zi) 当我将变量a和zi导出到一个.mat

我试图将Matlab的fillgaps.m函数移植到Python(3.5)中。但是,我在使用scipy.signal.lfilter时遇到了一个错误,而我在使用Matlab的过滤器时没有遇到这个错误

以下是对Matlab的调用:

y = xmean + filter(1, a, zeros(n,1), zi);
下面是Python中的等效调用:

y = xmean+ signal.lfilter(1.0, a, np.zeros(num), zi=zi)
当我将变量a和zi导出到一个.mat文件并在Matlab中打开它们时,过滤函数与这些输入完美结合。当我尝试在Python中运行它时,会出现上述错误

我已经检查了尺寸和数据类型。所有数组都是一维的,a=complex128,zi=float64。我尝试了很多方法,但不明白为什么会出现这个错误。感谢您的帮助

以下是a和zi的值(在python中):


也许这就是你需要的:

lfilter(array([1.0]), a, np.zeros(num), zi=zi)
lfilter(array([1.0]), a, np.zeros(num), zi=zi)