Me he encontrado con la función numpy.apply_along_axis en algún código. Y no entiendo la documentación al respecto.¿Qué hace numpy.apply_along_axis?
Este es un ejemplo de la documentación:
>>> 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]])
Por lo I como pensaba que entendía la documentación, que habría esperado:
array([[ 0.5, 1. , 1.5],
[ 4 , 5 , 6 ],
[ 7 , 8 , 9 ]])
es decir, después de haber aplicado la función a lo largo del eje [1,2,3] que es el eje en [[1,2,3], [4,5,6], [7,8,9]]
Obviamente estoy equivocado. ¿Podrías corregirme?