Python Numpy将矩阵附加到张量

Python Numpy将矩阵附加到张量,python,numpy,matrix,append,tensor,Python,Numpy,Matrix,Append,Tensor,我尝试使用numpy构建矩阵列表,但当我尝试将矩阵附加到空张量时,我得到了错误: ValueError:所有输入数组的维数必须相同 连接和附加似乎都失败了。我试着打电话: tensor=np.连接((张量,矩阵),轴=0) 及 tensor=np.append(张量,矩阵,轴=0) 但不管怎样,我都会犯同样的错误 张量从[0,h,w]开始,矩阵的大小为[h,w]。矩阵是我想要附加到的方向上的正确形状,但它似乎不会附加。似乎矩阵将表示传入的矩阵,而您将它们累加到张量中。因此,为了解决这个问题,在矩

我尝试使用numpy构建矩阵列表,但当我尝试将矩阵附加到空张量时,我得到了错误:

ValueError:所有输入数组的维数必须相同

连接和附加似乎都失败了。我试着打电话:

tensor=np.连接((张量,矩阵),轴=0)

tensor=np.append(张量,矩阵,轴=0)

但不管怎样,我都会犯同样的错误


张量从[0,h,w]开始,矩阵的大小为[h,w]。矩阵是我想要附加到的方向上的正确形状,但它似乎不会附加。

似乎
矩阵
将表示传入的矩阵,而您将它们累加到
张量中。因此,为了解决这个问题,在
矩阵
中添加一个新的轴作为前导轴,然后用
张量
-

np.concatenate((tensor, matrix[None]),axis=0)
如果正在累积,请将其存储回
张量中

或者使用
np.vstack((张量,矩阵[None])

样本运行-

In [16]: h,w = 3,4
    ...: a = np.random.rand(0,h,w)
    ...: b = np.random.rand(h,w)

In [17]: np.concatenate((a, b[None]),axis=0).shape
Out[17]: (1, 3, 4)

张量[0]=矩阵
?最初,张量[0]为空且超出范围。在添加矩阵时-是的。当有人创建一个0形状的数组时,我想是的。他们正在用重复的附加物缓慢地构建一个阵列。使用列表附加,只需一个连接。这是更快,更容易得到正确的。什么是列表附加?此外,速度不是一个真正的问题(至少在这一点上)。我想我可以先算出要添加多少个矩阵,然后再修改,这样可以加快速度。但是这个问题仍然存在,即使我有n行张量。