2016-12-25 14 views
0

В настоящее время мы работаем над проектом python и должны многократно выставлять в векторе из-за ограничений производительности. Мы получаем следующий расчет: у нас есть два массива numpy формы (20,6) и вы хотите вычислить попарно точечный продукт строк, т. Е. В конце мы должны получить матрицу (20,1), где каждая строка является скаляром, полученным соответствующим вектором умножение точки.Numpy две матрицы, попарно dot произведение строк

+1

Да, и что это ваш вопрос? Какую проблему вы испытываете при попытке сделать это? –

ответ

3

Вы можете умножить элемент два массивов мудры, а затем сделать сумму по строкам, а затем у вас есть массив, где каждый элемент представляет собой скалярное произведение из строк двух исходных массивов:

a = np.array([[1,2], [3,4]]) 
b = np.array([[3,4], [2,1]]) 

(a * b).sum(axis=1) 
# array([11, 10]) 
+0

Это сделало, спасибо! – Sleik