相关疑难解决方法(0)

初始化一个numpy数组

有没有办法初始化一个形状的numpy数组并添加到它?我将用列表示例解释我需要什么.如果我想创建一个循环中生成的对象列表,我可以这样做:

a = []
for i in range(5):
    a.append(i)
Run Code Online (Sandbox Code Playgroud)

我想用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
Run Code Online (Sandbox Code Playgroud)

big_array应具有的形状(10,4).这该怎么做?


编辑:

我想补充以下说明.我知道我可以定义big_array = numpy.zeros((10,4))然后填写它.但是,这需要提前指定big_array的大小.我知道这种情况下的大小,但如果我不知道怎么办?当我们使用.append函数在python中扩展列表时,我们不需要事先知道它的最终大小.我想知道是否有类似的东西从较小的数组创建一个更大的数组,从一个空数组开始.

python arrays numpy

111
推荐指数
8
解决办法
39万
查看次数

使用具有大量维度的numpy.array

如果您尝试在numpy中创建具有大量维度的数组,则会引发异常:

In [1]: import numpy as np

In [2]: a = np.zeros((1,) * 33)
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-2-32dc30f6e439> in <module>()
----> 1 a = np.zeros((1,) * 33)

ValueError: sequence too large; must be smaller than 32
Run Code Online (Sandbox Code Playgroud)

这有什么简单的解决方法吗?

numpy不允许创建此类数组的原因是什么?

python numpy

4
推荐指数
1
解决办法
3949
查看次数

标签 统计

numpy ×2

python ×2

arrays ×1