Python 2.7矩阵乘法相当于Dot产品?

时间:2017-01-25 00:05:29

标签: pandas numpy multidimensional-array rounding-error

我有两个问题嵌套为一个:

n_rows, n_cols = np.shape(Z)
ZT = Z.transpose()
ZTZ = np.dot(ZT,Z) # does return a value
ZTZ1 = np.matmul(ZT,Z) # error
print("Close?")
print(np.allclose(ZTZ,ZTZ1))
print("----")


---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-211-f26bdaebc910> in <module>()
 26 
 27 print
---> 28 coV = getCovariance(df)
 29 #print(coV)
 30 print

<ipython-input-211-f26bdaebc910> in getCovariance(df)
 13     ZT = Z.transpose()
 14     ZTZ = np.dot(ZT,Z)
---> 15     ZTZ1 = np.matmul(ZT,Z)
 16     print("Close?")
 17     print(np.allclose(ZTZ,ZTZ1))

AttributeError: 'module' object has no attribute 'matmul'

好的......显然我的机器上不存在matmul。得到它了。现在我如何确认点是做同样的事情?因为我有一个曾经是pandas.DataFrame对象的矩阵,我通过它的.as_matrix()方法将它转换为矩阵,我得到了舍入错误,需要检查出错的地方......我也尝试过标准*运算符,但在np.ndarray矩阵对象上不起作用。

SIDE注意:如果有关于四舍五入的任何专业提示可以从有熊猫经验的人那里转移,那也很受欢迎,因为我似乎无法了解大熊猫是如何给出的我是一个不同的矩阵而不是numpy类中的函数构建(我被要求重新实现该函数)。

0 个答案:

没有答案