我尝试了以下命令:
>>> a = np.matrix([[1,2],[3,4]])
>>> a
matrix([[1, 2],
[3, 4]])
>>> b = np.matrix([[0,1],[0,1]])
>>> b
matrix([[0, 1],
[0, 1]])
>>> np.dot(a,b)
matrix([[0, 3],
[0, 7]])
到目前为止,一切都很好。但是在我做了以下更改之后,我突然得到一个错误:
>>> tmp1 = a[np.ix_([1,1,0])]
>>> tmp2 = b[np.ix_([1,1,0])]
>>> tmp1.shape
(3, 2)
>>> tmp2.shape
(3, 2)
>>> np.dot(tmp1,tmp2)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: objects are not aligned
请帮助我完成上述操作时忽略的内容。 我真的想得到tmp1。* tmp2的点积,就像我对matlab的期望:
矩阵([[0,4],[0,4],[0,2]])
感谢。
答案 0 :(得分:3)
两个大小(3,2)矩阵的点积无效。尝试调换其中一个