1. 程式人生 > 實用技巧 >numpy的ndarray和matrix的運算

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),'\n',a)
print('----------------
') print(type(b),'\n',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),'\n',a)
print('----------------')
print(type(b),'\n',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),'\n',a) print('----------------') print(type(b),'\n',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),'\n',a)
print('----------------')
print(type(b),'\n',b)
print
('----------------') print(np.multiply(a,b))