J'ai deux matrices
a = np.matrix([[1,2], [3,4]])
b = np.matrix([[5,6], [7,8]])
et je veux obtenir le produit élément par élément [[1*5,2*6], [3*7,4*8]]
, égalant
[[5,12], [21,32]]
j'ai essayé
print(np.dot(a,b))
et
print(a*b)
mais les deux donnent le résultat
[[19 22], [43 50]]
qui est le produit de la matrice, pas le produit élément par élément. Comment puis-je obtenir le produit élément par élément (alias produit Hadamard) à l'aide des fonctions intégrées?
a
etb
n'êtes pas le type de matrice de NumPy? Avec cette classe,*
renvoie le produit interne, pas par élément. Mais pour landarray
classe habituelle ,*
signifie produit élément par élément.