PyWavelets pywt / _multilevel.py:148:FutureWarning:不建议将非元组序列用于多维索引

时间:2018-10-04 18:43:23

标签: python arrays pywavelets

我正在尝试运行以下PyWavelets示例: PyWavelets decomposition / reconstruction

我的一点点更复杂的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 [[形状为s的切片]]

小波计算的结果是正确的,即完美的重构,但是当您要处理超过54个抽头的信号时,此消息确实令人不安。

您是否对使用PyWavelet时如何解决与数据大小相关的“怪异”行为有任何想法?

干杯, 巴吉安

0 个答案:

没有答案