gpt4 book ai didi

python - 形状不等的 Numpy 堆栈

转载 作者:太空宇宙 更新时间:2023-11-04 07:58:16 26 4
gpt4 key购买 nike

我注意到 combining 2D arrays to 3D arrays 的解决方案通过 np.stacknp.dstack 或简单地传递数组列表仅在数组具有相同的 .shape[0] 时有效。

例如,假设我有:

print(arr)
[[0 1]
[2 3]
[4 5]
[6 7]
[8 9]]

很容易到达:

print(np.array([arr[2:4], arr[3:5]])) # same shape
[[[4 5]
[6 7]]

[[6 7]
[8 9]]]

但是,如果我传递一个长度不等的数组列表,我会得到:

print(np.array([arr[:2], arr[:3]]))
[array([[0, 1],
[2, 3]])
array([[0, 1],
[2, 3],
[4, 5]])]

我怎样才能简单地:

[[[0, 1]
[2, 3]]
[[0, 1]
[2, 3]
[4, 5]]]

我尝试过的:一些其他的 Array manipulation routines .

注意:最终想要对超过 2 个数组执行此操作,因此 np.append 可能并不理想。

最佳答案

Numpy 数组必须是矩形的,因此使用 numpy 数组无法获得您想要获得的结果。

你需要一个不同的数据结构。哪一个合适取决于您要对这些数据做什么。

关于python - 形状不等的 Numpy 堆栈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44951624/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com