Saltar al contenido

Multiplicación elemental de varias matrices en Python Numpy

Te traemos el hallazgo a este conflicto, al menos eso creemos. Si presentas alguna duda coméntalo y con placer te ayudaremos

Solución:

Tu culpa está en no leer la documentación:

numpy.multiply(x1, x2[, out])

multiply toma exactamente dos matrices de entrada. El tercer argumento opcional es una salida array que se puede utilizar para almacenar el resultado. (Si no se proporciona, una nueva array se crea y se devuelve). Cuando pasó tres matrices, la tercera array se sobrescribió con el producto de los dos primeros.

Para cualquiera que se tropiece con esto, la mejor manera de aplicar una multiplicación de n por elementos np.ndarray de forma (d, ) es a primera np.vstack ellos y aplicar np.prod en el primer eje:

>>> import numpy as np
>>>
>>> arrays = [
...   np.array([1, 2, 3]),
...   np.array([5, 8, 2]),
...   np.array([9, 2, 0]),
... ]
>>>
>>> print(np.prod(np.vstack(arrays), axis=0))
[45 32  0]

¡Sí! Simplemente como hacer * a np.arrays

import numpy as np
a=np.array([2,9,4])
b=np.array([3,4,5])
c=np.array([10,5,8])
d=a*b*c
print(d)

Producir:

[ 60 180 160]

Nos puedes añadir valor a nuestro contenido informacional participando con tu veteranía en las críticas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada.