Qué es 'np.newaxis' de NumPy y cómo usarlo
Comprensión de 'np.newaxis'
'np.newaxis' de NumPy, también conocido como 'Ninguno', es un pseudoíndice utilizado para agregar temporalmente un eje a un matriz. Cuando se usa una vez, aumenta la dimensión de la matriz en uno. Por ejemplo, una matriz 1D se convierte en una matriz 2D, una matriz 2D se convierte en una matriz 3D, y así sucesivamente.
Escenarios para usar 'np.newaxis'
Escenario 1: creación de vectores de fila/columna a partir de matrices 1D
'np.newaxis' se puede utilizar para convierta explícitamente una matriz 1D en un vector de fila (insertando un eje a lo largo de la primera dimensión) o un vector de columna (insertando un eje a lo largo de la segunda dimensión).
Escenario 2: Habilitación de NumPy Broadcasting
'np.newaxis' se vuelve útil cuando se realizan operaciones que involucran la transmisión NumPy. Por ejemplo, considere agregar dos matrices con las formas '(5,)' y '(3,)'. NumPy generará un error debido a formas incompatibles. Al usar 'np.newaxis' para aumentar la dimensión de una matriz, se puede habilitar la transmisión para realizar la operación.
Escenario 3: Promoción de matrices a dimensiones más altas
'np.newaxis' se puede usar varias veces para promover matrices a dimensiones más altas, lo que puede ser necesario para matrices de orden superior (tensores).
Uso Ejemplos
Para usar 'np.newaxis', insértelo en la expresión de corte. Por ejemplo:
# Create a row vector from a 1D array
x = np.arange(4)
x_row_vector = x[np.newaxis, :]
Para habilitar la transmisión:
# Add a 1D array to a 2D array
x1 = np.array([1, 2, 3, 4, 5])
x2 = np.array([5, 4, 3])
x1_new = x1[:, np.newaxis] # Insert axis for broadcasting
result = x1_new x2
Alternativa: 'np.expand_dims'
'np.expand_dims' es una alternativa a 'np.newaxis' que proporciona un 'eje' intuitivo kwarg para especificar el punto de inserción del nuevo eje.
Adicional Notas
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3