开发者社区 问答 正文

初始化一个numpy数组

有没有办法初始化形状的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)。这该怎么做? 问题来源于stack overflow

展开
收起
保持可爱mmm 2020-02-08 10:09:40 445 分享 版权
1 条回答
写回答
取消 提交回答
  • numpy.zeros

    返回给定形状和类型的新数组,并用零填充。

    要么

    numpy.ones

    返回给定形状和类型的新数组,并填充为1。

    要么

    numpy.empty

    返回给定形状和类型的新数组,而无需初始化条目。

    但是,通过将元素追加到列表来构造数组的思路在numpy中并没有太多用,因为它效率较低(numpy数据类型更接近底层C数组)。相反,您应该将数组预分配为所需的大小,然后填写行。不过,您可以numpy.append根据需要使用。

    2020-02-08 10:09:54
    赞同 展开评论
问答分类:
问答标签:
问答地址: