Multiplicación basada en elementos en NumPy
-
Multiplicación de matrices basada en elementos en Python usando el método
np.multiply()
-
Multiplicación de matrices basada en elementos en Python usando el operador
*
Este tutorial explicará varios métodos para realizar la multiplicación de matrices por elementos en Python. En la multiplicación de matrices por elementos (también conocida como Producto Hadamard), cada elemento de la primera matriz se multiplica por el elemento correspondiente de la segundo array.
Al realizar la multiplicación de matrices por elementos, ambas matrices deben tener las mismas dimensiones. el array resultante c
de la multiplicación matricial por elementos a*b = c
siempre tiene la misma dimensión que la de a
y b
.
Podemos realizar la multiplicación por elementos en Python usando los siguientes métodos:
Multiplicación de matrices basada en elementos en Python usando el método np.multiply()
El método np.multiply(x1, x2)
de la biblioteca NumPy
de Python toma dos arrays x1
y x2
como entrada, realiza una multiplicación por elementos en la entrada y devuelve el array resultante como entrada.
Por lo tanto, necesitamos pasar las dos arrays como entrada al método np.multiply()
para realizar la entrada de elementos. El siguiente código de ejemplo demuestra cómo utilizar np.multiply()
para realizar la multiplicación por elementos de dos arrays en Python.
import numpy as np
a1 = np.array([[12, 46, 23, 7, 2], [3, 5, 8, 3, 6]])
a2 = np.array([[15, 26, 2, 17, 22], [13, 8, 9, 3, 4]])
print(np.multiply(a1, a2))
Producción :
[[ 180 1196 46 119 44]
[ 39 40 72 9 24]]
También podemos realizar la multiplicación por elementos de filas, columnas o submatrices específicas de los Arrays utilizando el método np.multiply()
. Necesitamos pasar las filas, columnas o submatrices específicas de los Arrays al método np.multiply()
. Al igual que en la multiplicación de matrices por elementos, el tamaño de las filas, columnas o submatrices pasadas como primer y segundo operando para la multiplicación también debe ser el mismo.
El siguiente código de ejemplo demuestra cómo implementar la multiplicación por elementos de filas, columnas o submatrices de dos arrays en Python.
import numpy as np
a1 = np.array([[12, 46, 23, 7, 2], [3, 5, 8, 3, 6]])
a2 = np.array([[15, 26, 2, 17, 22], [13, 8, 9, 3, 4]])
print(np.multiply(a1[0, :], a2[1, :]))
print(np.multiply(a1[1, :], a2[0, :]))
print(np.multiply(a1[:, 3], a2[:, 1]))
Producción :
[156 368 207 21 8]
[ 45 130 16 51 132]
[182 24]
Multiplicación de matrices basada en elementos en Python usando el operador *
También podemos usar el operador *
con los Arrays para realizar la multiplicación de matrices por elementos. El operador *
, cuando se usa con los Arrays en Python, devuelve un array resultante de la multiplicación de matrices por elementos.
El siguiente código de ejemplo demuestra cómo usar el operador *
para realizar la multiplicación matricial por elementos en Python:
a1 = np.array([[12, 46, 23, 7, 2], [3, 5, 8, 3, 6]])
a2 = np.array([[15, 26, 2, 17, 22], [13, 8, 9, 3, 4]])
print(a1 * a2)
Producción :
[[ 180 1196 46 119 44]
[ 39 40 72 9 24]]
También podemos usar el operador *
para realizar la multiplicación por elementos de filas, columnas y submatrices de los Arrays de la siguiente manera en Python.
import numpy as np
a1 = np.array([[12, 46, 23, 7, 2], [3, 5, 8, 3, 6]])
a2 = np.array([[15, 26, 2, 17, 22], [13, 8, 9, 3, 4]])
print(a1[0, :] * a2[1, :])
print(a1[1, :] * a2[0, :])
print(a1[:, 3] * a2[:, 1])
Producción :
[156 368 207 21 8]
[ 45 130 16 51 132]
[182 24]