numpy的矩阵比较难,下面举例解释
# 矩阵运算和数组运算的区别
a = np.array([[1,1],[0,1]])
b = np.array([[2,0],[3,4]])
print(a)
print(b)
结果
[[1 1]
[0 1]]
[[2 0]
[3 4]]
# 数组的乘积
a * b
结果
array([[2, 0],
[0, 4]])
# 矩阵的乘积
# (a的第1行和b的第1列的元素相乘再相加)5 = 1*2 + 1*3
# (a的第1行和b的第2列的元素相乘再相加)4 = 1*0 + 1*4
# (a的第2行和b的第1列的元素相乘再相加)3 = 0*2 + 1*3
# (a的第2行和b的第2列的元素相乘再相加)4 = 0*0 + 1*4
# 矩阵运算的第一种写法
a @ b
结果
array([[5, 4],
[3, 4]])
# 矩阵运算的第二种写法
a.dot(b)
结果
array([[5, 4],
[3, 4]])