Why doesn't pywavelet Wavelet () accept all the built-in wavelets?

Any idea why pywt.Wavelet()giving an error for some inline bursts? Is there a fundamental (mathematical) reason?

pywt.Wavelet(i)

comes out with

ValueError: Invalid wavelet name.

for i =

'cgau1', 'cgau2', 'cgau3', 'cgau4', 'cgau5', 'cgau6', 'cgau7'
'cgau8', 'cmor', 'fbsp', 'gaus1', 'gaus2', 'gaus3', 'gaus4', 'gaus5'
'gaus6', 'gaus7', 'gaus8', 'mexh', 'morl'

From pywavelet document

class pywt.Wavelet(name[, filter_bank=None])

Describes the properties of the wavelet identified by the specified wavelet name. To use the built-in wavelet, the name parameter must be a valid wavelet name from the pywt.wavelist () list .

+4
source share
1 answer

These spikes are continuous, so you need to create them:

pywt.ContinuousWavelet('mexh')

and use a continuous wavelet transform that takes discrete data (array) as input:

pywt.cwt(data, scales, wavelet)

I do not know what the real reason for this difference is.

+6

Source: https://habr.com/ru/post/1663985/


All Articles