有没有办法初始化形状的numpy数组并将其添加到其中?我将通过列表示例解释我的需求。如果要创建循环中生成的对象列表,可以执行以下操作:
a = []
for i in range(5):
a.append(i)
我想对一个numpy数组做类似的事情。我知道vstack,串联等。但是,这些似乎需要两个numpy数组作为输入。我需要的是:
big_array # Initially empty. This is where I don't know what to specify
for i in range(5):
array i of shape = (2,4) created.
add to big_array
本big_array
应具有的形状(10,4)
。这该怎么做?
编辑:
我想添加以下说明。我知道我可以定义big_array = numpy.zeros((10,4))
然后填充它。但是,这需要预先指定big_array的大小。我知道这种情况下的大小,但是如果我不知道该怎么办?当我们使用该.append
函数在python中扩展列表时,我们不需要事先知道其最终大小。我想知道是否存在从空数组开始的从较小数组创建较大数组的类似方法。
返回给定形状和类型的新数组,并用零填充。
要么
返回给定形状和类型的新数组,并填充其中的一个。
要么
返回给定形状和类型的新数组,而无需初始化条目。
但是,通过将元素追加到列表来构造数组的思路在numpy中并没有太多用,因为它效率较低(numpy数据类型更接近底层C数组)。相反,您应该将数组预分配为所需的大小,然后填写行。不过,您可以numpy.append
根据需要使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句