Numpy: _read32 TypeError: только целочисленные скалярные массивы могут быть преобразованы в скалярный индекс

Созданный на 12 авг. 2017  ·  4Комментарии  ·  Источник: numpy/numpy

Кажется, это ошибка.

Для меня конкатенация массивов не работает должным образом. Немного поискав, я нашел вот это:

https://github.com/llSourcell/tensorflow_demo/issues/4

https://stackoverflow.com/questions/42128830/typeerror-only-integer-scalar-arrays-can-be-converted-to-a-scalar-index

https://github.com/Paradigm4/SciDB-Py/issues/96

Самый полезный комментарий

Подпись Concatenate

def concatenate(arrays, axis=0):

т.е. он принимает один позиционный аргумент, который представляет собой итерацию массивов, подлежащих конкатенации. Итак, вы хотите np.concatenate((x, zrs)) . Прямо сейчас вы заканчиваете тем, что говорите np.concatenate(x, axis=zrs) , а затем numpy путается, когда пытается преобразовать массив zrs в индекс оси.

Все 4 Комментарий

Эти ссылки показывают проекты, адаптирующиеся к преднамеренному изменению поведения, которое произошло еще в numpy 1.12 после периода устаревания. Однако, насколько я могу судить, ни один из них не имеет ничего общего с конкатенацией массивов.

Можете ли вы привести пример того, что вы делаете и что вы получаете, и чего вы ожидали вместо этого?

Конечно. Это весь скрипт:

import numpy as np
import scipy.io.wavfile as wf
(fs, x) = wf.read('wave.wav')
zrs = np.zeros(int(x.size / 2))
x = np.concatenate(x, zrs)

Огромное спасибо за помощь!

Подпись Concatenate

def concatenate(arrays, axis=0):

т.е. он принимает один позиционный аргумент, который представляет собой итерацию массивов, подлежащих конкатенации. Итак, вы хотите np.concatenate((x, zrs)) . Прямо сейчас вы заканчиваете тем, что говорите np.concatenate(x, axis=zrs) , а затем numpy путается, когда пытается преобразовать массив zrs в индекс оси.

Привет Натаниэль,

Спасибо тебе за это. Извините, что потратил ваше время на глупую синтаксическую ошибку. Вы очень любезны, что ответили. :)

Была ли эта страница полезной?
0 / 5 - 0 рейтинги