У меня есть две матрицыКак получить элементарное умножение матрицы (продукт Адамара) в numpy?
a = np.matrix([[1,2], [3,4]])
b = np.matrix([[5,6], [7,8]])
, и я хочу, чтобы получить поэлементное продукт, [[1*5,2*6], [3*7,4*8]]
, сравнявшись
[[5,12], [21,32]]
Я попытался
print(np.dot(a,b))
и
print(a*b)
но оба дают результат
[[19 22], [43 50]]
, который является матрицей продукта, а не поэлементно продукт. Как я могу получить элементный продукт (например, продукт Hadamard), используя встроенные функции?
Вы уверены, что 'a' и' b' не матричного типа Numpy в? С этим классом '*' возвращает внутренний продукт, а не элементный. Но для обычного класса 'ndarray',' * 'означает элементный продукт. – bnaecker
- массивы 'a' и' b' numpy? Кроме того, в вашем вопросе выше вы используете 'x' и' y' для вычислений вместо 'a' и' b'. Это просто опечатка? – jtitusj
a и b являются элементами матричного типа num – Malintha