我正在尝试使用 scipy.signal.savgol_filter
函数过滤数据集,但出现错误
TypeError: expected x and y to have same length
当我尝试在新列表中分配数据时。
奇怪的是,就在我上次计算之前,一切都按预期进行,但现在我明白了。我试图创建一个与过滤后的列表大小相同的空列表,但我遇到了同样的错误。
这是我的那部分代码:
import scipy as sc
import scipy.signal
Cf = sc.signal.savgol_filter(x=C, window_length=299, polyorder=3)
其中 C
是定义明确的浮点型数字列表。
最佳答案
如果 window_length
大于 C
的长度(例如 savgol_filter([3, 1, 4, 1, 5, 9], window_length=7, polyorder=3)
).
在 SciPy 1.0.0 中,含糊不清的错误消息已替换为信息更丰富的消息:
ValueError: If mode is 'interp', window_length must be less than
or equal to the size of x.
关于python - 内置函数 scipy.signal.savgol_filter 返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43575778/