¿Cuál es la forma más eficiente de mapear una función sobre una matriz numpy? La forma en que lo he estado haciendo en mi proyecto actual es la siguiente:
import numpy as np x = np.array([1, 2, 3, 4, 5]) # Obtener matriz de cuadrados de cada elemento en x squarer = lambda t: t ** 2 cuadrados = np.array([squarer(xi) for xi in x])
Sin embargo, esto parece probablemente sea muy ineficiente, ya que estoy usando una lista de comprensión para construir la nueva matriz como una lista de Python antes de volver a convertirla en una matriz numpy.
¿Podemos hacerlo mejor?