我有两个数组:
A = np.array([1, 2, 3])
B = np.array([2, 3, 4])
C = np.stack((A, B), axis=0)
print C.shape
(2, 3)
不应该形状是(6,)
?
使用np.stack()
函数,您可以指定要将哪个axis
视为索引轴。所以你可以看到你永远不会得到6
的形状,只有(2,3)
或(3,2)
这个例子取决于你选择的轴。
见下文:
A = np.array([1, 2, 3])
B = np.array([2, 3, 4])
arrays = [A, B]
使用此代码:
print(np.stack(arrays, axis=0))
你得到这个输出:
[[1 2 3]
[2 3 4]]
使用此代码:
print(np.stack(arrays, axis=1))
你得到这个输出:
[[1 2]
[2 3]
[3 4]]
因为你沿着轴0堆叠。它正在做类似的事情
[[1,2,3],
[4,5,6]]
如果你想要(6,)形状,你应该使用np.concatenate。