Матрица специального умножения в numpy - PullRequest
0 голосов
/ 06 декабря 2018

У меня есть два массива m1 и m2, и я хочу сделать специальное умножение: 1 * 8 + 2 * 6, 3 * 8 + 4 * 6, 1 * 2 + 2 * 6, 3 * 2 + 4 * 6... Итак, я хочу этот вывод.результат = [20, 48, 14,30, ..]

m1 = np.array([1,2,3,4])
m2 = np.array([8,6,2,6,2,5])

Извините, но я действительно не знаю, как это сделать.Я думаю, что для цикла вроде этого:

for x in m1:

Спасибо

1 Ответ

0 голосов
/ 06 декабря 2018

Очевидно, что ваши скалярные произведения должны быть выполнены 2 на 2, поэтому вам нужно начать изменять ваши данные:

m1 = np.array([1,2,3,4]).reshape(2,2)
m2 = np.array([8,6,2,6,2,5]).reshape(3,2)

Итак, теперь вы хотите получить скалярное произведение в последнем столбце и выровнятьрезультат, так же:

np.dot(m2, m1.T).reshape(-1)
...