numpy的ndarray和matrix的运算

在numpy中有可以用ndarray和matrix表示矩阵。matrix是ndarray的特殊形式,只用来表示二维矩阵,ndarray不受维度的限制。比起matrix,ndarray更灵活。

在矩阵中,乘法有两个,一个是矩阵相乘,比如一个(2×3)的矩阵和一个(3×4)的矩阵相乘,结果是一个(2×4)的矩阵。

a=np.array(np.arange(6).reshape(2,3))
b=np.array((np.arange(12)+1).reshape(3,4))
print(type(a),'
',a)
print('----------------')
print(type(b),'
',b)
print('----------------')
print(np.matmul(a,b))

a=np.mat(np.arange(6).reshape(2,3))
b=np.mat((np.arange(12)+1).reshape(3,4))
print(type(a),'
',a)
print('----------------')
print(type(b),'
',b)
print('----------------')
print(a*b)

 一个是矩阵的对应位置相乘,这就要求相乘的两个矩阵的大小是一样的。

a=np.array(np.arange(6).reshape(2,3))
b=np.array((np.arange(6)+1).reshape(2,3))
print(type(a),'
',a)
print('----------------')
print(type(b),'
',b)
print('----------------')
print(a*b)

a=np.mat(np.arange(6).reshape(2,3))
b=np.mat((np.arange(6)+1).reshape(2,3))
print(type(a),'
',a)
print('----------------')
print(type(b),'
',b)
print('----------------')
print(np.multiply(a,b))

原文地址:https://www.cnblogs.com/gloria-zhang/p/13297729.html