Operadores aritméticos con matrices 2D numéricas
Vamos a crear 2 matrices bidimensionales, A y B.
12A = np.array([[3,2],[0,1]]])B = np.array([[3,1],[2,1]])
pitón
E imprímelos:
1print(A)
pitón
Salida:
12[[3 2] [0 1]]
1print(B)
pitón
Salida:
12[[3 1] [2 1]]
Ahora, intentemos agregar los arreglos. No es de extrañar que los elementos en las respectivas posiciones de las matrices se sumen.
1A+B
pitón
Salida:
12array([[6, 3], [2, 2]])
Aquí está la representación pictórica.
Todas las operaciones aritméticas funcionan de manera similar. También puedes multiplicar o dividir las matrices. Las operaciones se realizan por elementos.
1A*B
pitón
Salida:
12array([[9, 2], [0, 1]])
Similar a los lenguajes de programación como C# y Java, también puedes usar operadores como +=, *= en tus matrices de Numpy. Por ejemplo, tenemos la matriz:
1A
pitón
Salida:
12array([[3, 2], [0, 1]])
Hacer += operación en la matriz $0027A$0027 equivale a añadir cada elemento de la matriz con un valor especificado. Así que,
1A +=2
pitón
Salida:
12array([[5, 4], [2, 3]])
Tenga en cuenta que esta operación se realiza en el lugar. Del mismo modo, puede utilizar otras operaciones aritméticas como -= y *=.
Multiplicación de la matriz
Para realizar una típica multiplicación de la matriz (o producto de la matriz), puedes usar el operador «@».
1A @ B
pitón
Salida:
12array([[13, 5], [ 2, 1]])
Así es como funciona: la celda (1,1) (valor: 13) del resultado es una Suma-Producto de la Fila 1 de la matriz A (una matriz bidimensional A) y la Columna 1 de la matriz B.
De manera similar, la célula (1,2) en el resultado es una Suma-Producto de la Fila 1 en la matriz A y la Columna 2 en la matriz B.
Y así sucesivamente, los valores se pueblan para todas las células.
Aquí hay una representación pictórica para la célula (1,1):
La misma salida también puede lograrse mediante el punto de función. Por ejemplo:
1A.dot(B)
pitón
Salida:
12array([[13, 5], [ 2, 1]])
Funciones aritméticas en Numpy
A continuación, usemos la función aleatoria para generar un conjunto bidimensional.
12array = np.random.random((2,2))array
pitón
Salida:
12array([[0.33260853, 0.07580989], [0.96835359, 0.1670734 ]])
Hay varias funciones que puede utilizar para realizar operaciones aritméticas en este conjunto. Por ejemplo, la función de suma suma suma todos los valores de la matriz y da una salida escalar.
1array.sum()
pitón
Salida:
11.5438454156151251
La función min encuentra el valor más bajo de la matriz.
1array.min()
pitón
Salida:
10.08920266767965357
Usando el parámetro del eje
Si tienes más de una dimensión en tu matriz, puedes definir el eje; a lo largo del cual, las operaciones aritméticas deben tener lugar.
Por ejemplo, para un conjunto bidimensional, tienes dos ejes. El eje 0 corre verticalmente hacia abajo a través de las filas, mientras que el eje 1 corre horizontalmente de izquierda a derecha a través de las columnas.
Si quieres la suma de todos los valores en una sola columna, usa el parámetro del Eje con el valor $00270$0027. El primer valor de la matriz resultante representa la suma de todos los valores de la primera columna y el segundo valor representa la suma de todos los valores de la segunda columna.
1array.sum(axis=0)
pitón
Salida:
1array([1.30096212, 0.24288329])
De manera similar, para encontrar el valor más bajo de una fila en particular, usa el parámetro del Eje con un Valor $00271$0027. Cada uno de los valores de la matriz resultante representa el valor más bajo de esa fila en particular.
1array.min(axis=1)
pitón
Salida:
1array([0.07580989, 0.1670734 ])
Operadores lógicos en Numpy
Numpy proporciona funciones lógicas como logical_and, logical_or etc., en un patrón similar para realizar operaciones lógicas. Por ejemplo:
1np.logical_and(True,True)
pitón
Salida:
1True
1np.logical_or(5,6,0)
pitón
Salida:
1False
Otras funciones en Numpy
Además de los operadores aritméticos, Numpy también proporciona funciones para realizar operaciones aritméticas. Puede utilizar funciones como sumar, restar, multiplicar, dividir para realizar operaciones de matriz. Por ejemplo:
12a = np.arange(9).reshape(3,3)a
pitón
Salida:
123array([[0, 1, 2], [3, 4, 5], [6, 7, 8]]])
Añadamos una matriz unidimensional a la matriz bidimensional.
12b = np.array([2,4,6])np.add(a,b)
pitón
Salida:
123array([[ 2, 5, 8], [ 5, 8, 11], [ 8, 11, 14]]])
Tengan en cuenta que la matriz «b» se añade a cada fila de la matriz «a». Así que las dimensiones de la matriz deberían coincidir.