2016-06-19 4 views
3

Мой вопрос очень интуитивно понятен в массивах, но не в матрицах. Как я могу выделить один элемент из строки одной матрицы во всей эквивалентной строке в другой матрице. Давайте предположим, что у меня есть:Как умножить строки в матрицах в Python?

x = np.matrix([[1], [2]]) 
y = np.matrix([[3, 4], [5, 6]]) 

, и я хочу получить в результате:

[[3, 4], [10, 12] 

или в более удобном для восприятия виде:

x = 1 
    2 

y = 3 4 

    5 6 

, и я хочу, чтобы получить в результате :

3 4 

10 12 

ответ

3

UPDATE: вы можете использовать np.multiply() функцию:

In [57]: x 
Out[57]: 
matrix([[1], 
     [2]]) 

In [58]: y 
Out[58]: 
matrix([[3, 4], 
     [5, 6]]) 

In [59]: np.multiply(y, x) 
Out[59]: 
matrix([[ 3, 4], 
     [10, 12]]) 

OLD Ответ:

он будет работать из коробки, если вы будете использовать np.array вместо np.matrix:

In [44]: xx = np.array([[1], [2]]) 

In [45]: yy = np.array([[3, 4], [5, 6]]) 

In [46]: xx 
Out[46]: 
array([[1], 
     [2]]) 

In [47]: yy 
Out[47]: 
array([[3, 4], 
     [5, 6]]) 

In [48]: yy * xx 
Out[48]: 
array([[ 3, 4], 
     [10, 12]]) 

This answer, возможно, помочь понять разницу между np.array и np.matrix

+0

Я не могу изменить объект ... Мне нужно знать, как это сделать с помощью матриц –

Смежные вопросы