在numpy中堆叠数组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在numpy中堆叠数组相关的知识,希望对你有一定的参考价值。
我有两个数组:
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。
以上是关于在numpy中堆叠数组的主要内容,如果未能解决你的问题,请参考以下文章