我想通过np.array添加矩阵的每一列,但是numpy广播只允许通过np.array添加矩阵的每一行 . 怎么做?我的想法是首先转置矩阵然后添加数组然后转置,但它使用两个转置 . 是否有直接执行此功能的功能?
您可以使用仅包含一列的第二个矩阵,而不是使用数组:
matrix = np.matrix(np.zeros((3,3))) array = np.matrix([[1],[2],[3]]) matrix([[1], [2], [3]]) matrix + array matrix([[ 1., 1., 1.], [ 2., 2., 2.], [ 3., 3., 3.]])
如果你最初有一个数组,你可以像这样重塑它:
a = np.asarray([1,2,3]) matrix + np.reshape(a, (3,1)) matrix([[ 1., 1., 1.], [ 2., 2., 2.], [ 3., 3., 3.]])
1 回答
您可以使用仅包含一列的第二个矩阵,而不是使用数组:
如果你最初有一个数组,你可以像这样重塑它: