2013-07-27 194 views
3

我有我在一個名爲M. 變量保持矩陣然後我用:爲什麼numpy會給出尺寸不匹配錯誤?

dist = np.dot(M[0], M[0]) 

,我總是得到錯誤最終導致:

File "/usr/lib/python2.7/dist-packages/scipy/sparse/base.py", line 246, in __mul__ 
     raise ValueError('dimension mismatch') 
    ValueError: dimension mismatch 

我真的不知道如何這個語句可能會因尺寸不匹配而失敗 - 我爲第一個和第二個數組使用參數M [0],它們的大小相同。

+1

顯示我們是什麼'M [0]'包含。 –

+0

你真的認爲M是一個矩陣,還是隻是一個普通的ndarray?如果是ndarray,它的尺寸是多少? – user2357112

回答

3

M如果是Y矩陣的X,然後M[0]是1由Y.不能乘2 1-通過-Y矩陣除非Y是1

+0

'M = np.array([[1,2,3],[4,5,6],[7,8,9]]);如我所料,np.dot(M [0],M [0])給出14。 –

+0

這不是[矩陣](http://docs.scipy.org/doc/numpy/reference/generated/numpy.matrix.html)。這是[ndarray](http://docs.scipy.org/doc/numpy/reference/generated/numpy.ndarray.html)。 – user2357112

+0

好電話!也許OP期待着ndarray的行爲。 –