python - scipy.signal.cwt 在 correlate() 中出现值错误

标签 python numpy scipy wavelet-transform

尝试使用 scipy.signal.cwt 时出现奇怪的错误:

我有一些列表 c,我想像这样进行连续小波变换:

scipy.signal.cwt(np.array(c), scipy.signal.morlet, np.arange(.01,.1,.01))

我得到一个奇怪的错误:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-55-5af5e14b96cd> in <module>()
----> 1 sig.cwt(a, sig.morlet, np.arange(.01,.1,.01))

/usr/local/lib/python2.7/site-packages/scipy/signal/wavelets.pyc in cwt(data, wavelet,     widths)
    359         wavelet_data = wavelet(min(10 * width, len(data)), width)
    360         output[ind, :] = convolve(data, wavelet_data,
--> 361                                               mode='same')
    362     return output

/usr/local/lib/python2.7/site-packages/scipy/signal/signaltools.pyc in convolve(in1,     in2, mode)
    270 
    271     if np.iscomplexobj(kernel):
--> 272         return correlate(volume, kernel[slice_obj].conj(), mode)
    273     else:
    274         return correlate(volume, kernel[slice_obj], mode)

/usr/local/lib/python2.7/site-packages/scipy/signal/signaltools.pyc in correlate(in1, in2, mode)
    129         in1zpadded = np.zeros(ps, in1.dtype)
    130         sc = [slice(0, i) for i in in1.shape]
--> 131         in1zpadded[sc] = in1.copy()
    132 
    133         if mode == 'full':

ValueError: could not broadcast input array from shape (66467) into shape (66466)

是什么导致了这个错误?

最佳答案

scipy.signal.cwt 的第三个参数是宽度,它必须大于 1,所以将代码更改为:

scipy.signal.cwt(np.array(c), scipy.signal.morlet, np.arange(.01,.1,.01) * len(c))

关于python - scipy.signal.cwt 在 correlate() 中出现值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23232012/

相关文章:

python - 使用嵌入式 Python/C 函数编译文件 .c

python - Pandas 中的 plot 和 iplot 有什么区别?

python - 不同步长的欧拉方法。如何更改算法代码以适应不同的步长值?

Python:使用 np.savetxt 使用 float 和字符串保存数据

python - numpy 的内存分析器

python - `numpy.diff` 和 `scipy.fftpack.diff` 在微分时给出不同的结果

python - 计算方差图像python

python - 递归树遍历将结果添加到python中的嵌套字典

python - 在 Python (Windows) 中使用池进行多处理

python - Python 的 numpy.exp 函数中的溢出错误