使用 numpy 和 python3 我必须解决以下问题:
我有一个函数,它返回固定大小的整数的二维数组(在本例中为 2x3)。运行此函数 n 次并将它们堆叠在一起形成 3 维 2x3xn 数组的最惯用方法是什么?性能怎么样?只进行最小分配数量的东西会很好。
最佳答案
您可能正在寻找np.dstack
:
>>> import numpy as np
>>> arrs = [np.random.rand(2, 3) for x in range(5)]
>>> np.dstack(arrs).shape
(2, 3, 5)
如果您知道最终形状,您可以执行如下操作:
>>> out = np.empty((2, 3, 5))
>>> out[..., 0] = np.random.rand(2, 3)
关于python - 给定返回 n 维数组的函数,如何创建 n+1 维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33813207/