Векторизация NumPy многомерного массива. Массив операций не элементный - PullRequest
0 голосов
/ 16 октября 2019

Я не смог найти здесь ответа, поэтому надеюсь, что вы, ребята, сможете помочь. Мы все знаем, что мы не должны перебирать массив в python, потому что это занимает так много времени, поэтому я хочу векторизовать его. Сначала операция: Моя операция должна сравнить два одномерных распределения:

from pyemd import emd
def vectoriztaion(a=np.ones(25),b=np.ones(25)):
    value = pyemd.emd(np.array(a), np.array(b), helper.get_distance_matrix())
    return value

Как вы можете видеть, входные данные a и b являются np.arrays формы (25). Теперь я планировал использовать функцию np.vectorize

vfunc = np.vectorize(vectoriztaion)
result = vfunc(A,B)

, где A и B - оба np.array формы (N, 25). Я хочу, чтобы код возвращал np.array формы (N).

Запуск кода дает мне эту ошибку:

ValueError: Buffer has wrong number of dimensions (expected 1, got 0)

Если вы видели подобный вопрос или если вы знаетекак я могу запустить код. Пожалуйста, дайте мне знать.

Заранее спасибо

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