Numpy: Как отобразить f: (shape (3) ndarray) -> (плавать) поверх ndarray формы (..., 3), чтобы получить ndarray формы (...)? - PullRequest
0 голосов
/ 08 июля 2011

У меня есть функция, которая отображает ndarray формы (3) на float, и у меня есть ndarray формы (..., 3). Каков наилучший способ сопоставить эту функцию с этим массивом, чтобы получить массив формы (...)?

Спасибо.

1 Ответ

4 голосов
/ 08 июля 2011

Вы хотите numpy.apply_along_axis.

def f(a):
     return a[0] + a[1] + a[2]
mm = numpy.random.randn(5, 3)
numpy.apply_along_axis(f, 1, mm)

вывод: array([-1.75875289, -0.34689792, 0.66092486, -0.21626001, -0.14125476])

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