一維陣列運算
- 生成一維示例陣列
>>> a = np.array([1, 2, 3, 4, 5])
>>> b = np.arange(1, 6)
>>> a, b
(array([1, 2, 3, 4, 5]), array([1, 2, 3, 4, 5]))
- 一維陣列加法運算
>>> a + b
array([ 2, 4, 6, 8, 10])
- 一維陣列減法運算
>>> a - b
array([0, 0, 0, 0, 0])
- 一維陣列乘法運算
>>> a * b
array([ 1, 4, 9, 16, 25])
- 一維陣列除法運算
>>> a / b
array([1., 1., 1., 1., 1.])
二維陣列(矩陣)運算
- 生成二維示例陣列(可以看作矩陣)
>>> A = np.array([[1, 2],[3, 4]])
>>> B = np.array([[5, 6],[7, 8]])
>>> A, B
(array([[1, 2],
[3, 4]]), array([[5, 6],
[7, 8]]))
- 矩陣加法運算
>>> A + B
array([[ 6, 8],
[10, 12]])
- 矩陣減法運算
>>> A - B
array([[-4, -4],
[-4, -4]])
- 矩陣元素間乘法運算
>>> A * B
array([[ 5, 12],
[21, 32]])
- 矩陣乘法運算
>>> np.dot(A, B)
array([[19, 22],
[43, 50]])
注意:np.dot(A, B)
與上題A * B
的區別,如果不瞭解矩陣乘法運算,點選百度百科學習。
# 如果使用 np.mat 將二維陣列準確定義為矩陣,就可以直接使用 * 完成矩陣乘法計算
>>> np.mat(A) * np.mat(B)
matrix([[19, 22],
[43, 50]])
- 數乘矩陣
>>> 2 * A
array([[2, 4],
[6, 8]])
- 矩陣的轉置
>>> A.T
array([[1, 3],
[2, 4]])
- 矩陣求逆
>>> np.linalg.inv(A)
array([[-2. , 1. ],
[ 1.5, -0.5]])
關於逆矩陣,請檢視百科
本作品採用《CC 協議》,轉載必須註明作者和本文連結