что именно выполняет numpy.apply_along_axis?

Я наткнулся на функцию numpy.apply_along_axis в каком-то коде. И я не понимаю документации по этому поводу.

Это пример документации:

>>> def new_func(a):
...     """Divide elements of a by 2."""
...     return a * 0.5
>>> b = np.array([[1,2,3], [4,5,6], [7,8,9]])
>>> np.apply_along_axis(new_func, 0, b)
array([[ 0.5,  1. ,  1.5],
       [ 2. ,  2.5,  3. ],
       [ 3.5,  4. ,  4.5]])

Насколько я думал, я понял документацию, я ожидал:

array([[ 0.5,  1. ,  1.5],
       [ 4  ,  5  ,  6  ],
       [ 7  ,  8  ,  9  ]])

т.е. применив функцию вдоль оси [1,2,3] , которая является осью 0 в [[1,2,3], [4,5,6], [7 , 8,9]]

Очевидно, я ошибаюсь. Не могли бы вы меня поправить?

16
задан Stephane Rolland 26 January 2012 в 14:29
поделиться