关于一维矩阵与二维矩阵
a=np.array([1,2])
b=np.array([[1],[2]])
print(a*b)
print(a.dot(b))
输出如下
[[1 2]
[2 4]]
[5]
a=np.array([1,2])
b=np.array([[1,2]])
c=np.array([[1],[2]])
print(b.dot(a))
print(a.dot(c))
这个时候输出都是[5],一维矩阵既可以当作行向量也可以当作列向量
此时a是一维矩阵,b是二维矩阵,若a*b,实际是一维矩阵分别乘二维矩阵的每一行,而.dot()才是严格矩阵乘法。
此外,如果用mat()或matrix()方法是无法初始化一维矩阵的。
如果想将一维数组变为二维数组,可以用reshape()方法。
a=np.array([1,2])
b=a.reshape(1,2)
print(a.shape)
print(b.shape)
shape如下:
(2,)
(1, 2)
本文详细解析了一维矩阵与二维矩阵的运算规则,包括直接乘法与矩阵点乘的区别,以及如何使用numpy库中的reshape方法转换一维数组为二维数组。通过具体示例,阐述了不同矩阵类型在乘法运算中的表现。
184

被折叠的 条评论
为什么被折叠?



