PyWavelets pywt / _multilevel.py: 148: FutureWarning: использование последовательности без кортежей для многомерной индексации не рекомендуется - PullRequest
0 голосов
/ 04 октября 2018

Я пытаюсь запустить что-то вроде следующего примера PyWavelets: Разложение / реконструкция PyWavelets

Мой немного более сложный код Python 3.6:

# Signal generation
N = 54                        # IMPORTANT VALUE FOR THE REST OF MY STORY
np.random.seed(seed=17171)    # To fix the data, but values do not matter
x = np.random.normal(0.,1.,N) # Random signal

# Wavelet decomposition
db = pywt.Wavelet('db4')
Wx = pywt.wavedec(x, db)

# Wavelet reconstruction
z = pywt.waverec(Wx, db)

При запуске этого куска кода все идет хорошо.Теперь, если мы увеличим размер сигнала, приняв N больше 54, например, N = 55, мы получим следующее ПРЕДУПРЕЖДЕНИЕ:

pywt / _multilevel.py: 148: FutureWarning: Использованиенепустая последовательность для многомерной индексации не рекомендуется;используйте arr[tuple(seq)] вместо arr[seq].В будущем это будет интерпретироваться как индекс массива arr[np.array(seq)], что приведет либо к ошибке, либо к другому результату.a = a [[slice (s) for s in d.shape]]

Результат вычисления вейвлета верный, т.е. идеальное восстановление, но это сообщение действительно мешает, когда вы хотите обработать сигналы с помощьюболее 54 нажатий.

Не могли бы вы придумать, как исправить это "странное" поведение, связанное с размером данных, при работе с PyWavelet?

Cheers, Bagvian

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...