运算方式与矩阵相乘类似:对应位置相乘再相加,运算期间类类型都为数组
例子见下:
a = np.arange(12).reshape(3,4)
b = np.arange(12).reshape(4,3)
print(a)
'''
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
'''
print(b)
'''
[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 9 10 11]]
'''
c = a @ b
print(c)
'''
[[ 42 48 54]
[114 136 158]
[186 224 262]]
'''
#
运算方式为:第一个数组的第1行与第二个数组对应位置相乘相加后,得到结果的第1位,第一个数组的第2行与第二个数组对应位置相乘相加后,得到结果的第2位…
例子见下:
a = np.arange(12).reshape(3,4)
b = np.arange(4)
print(a)
'''
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
'''
print(b)
#[0 1 2 3]
c = a @ b
print(c)
'''
[14 38 62]
'''
a = np.mat(np.arange(12).reshape(3,4)) #
b = np.mat(np.arange(4).reshape(3,4))
print(a)
'''
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
'''
print(b)
'''
[[0]
[1]
[2]
[3]]
'''
c = a @ b
print(c)
'''
[[14]
[38]
[62]]
'''
运算方式为:第一个数组的第1行与第二个数组对应位置相乘相加后,得到最终结果的第1位,第一个数组的第2行与第二个数组对应位置相乘相加后,得到最终结果的第2位…
运算结果为矩阵
a = np.mat(np.arange(12).reshape(3,4))
b = np.arange(4)
c = a @ b
print(a)
'''
[[ 0 1 2 3]
[ 4 5 6 7]
[ 8 9 10 11]]
'''
print(b)
'''
[0 1 2 3]
'''
print(c)
#[[14 38 62]]