在相同的第一维上合并多个 numpy 数组

Merge multiple numpy arrays over same first dimension

我有两个具有相同第一维的 numpy 数组 ab,例如a.shape -> (3, 100)b.shape -> (3, 20, 20).

我需要将它们转换(尽可能高效)成数组(或嵌套列表或字典?)ab 具有相同的第一维(这里 3)。 因此,当我调用 ab[1] 时,它应该 return 类似 [a[1], b[1]] 的东西(或者换句话说 ab[:][0] == aab[:][1] == b)。

我觉得这是一个简单的问题,但我不知道要搜索什么,而且我已经坐了太久了。

无法创建具有不同形状数组的组合 NumPy 数组。你可以做的是使用一个列表并将它们放在同一行中。

ab = [[a[i],b[i]] for i in range(3)]
(ab[0][0] == a[0]).all()
>>>True