python - numpy 数组的追加与调整大小

标签 python arrays numpy

我想在我的 numpy.array 末尾附加一个值。 我看到了 numpy.append 函数,但它执行了原始数组的精确副本,最后添加了我的新值。我想避免复制,因为我的数组很大。

我正在使用 resize 方法,然后将最后一个可用索引设置为新值。 您能否确认 resize 是在末尾附加值的最佳方式? 它不是以某种方式移动内存吗?

oldSize = myArray,shape(0)
myArray.resize( oldSize + 1 )
myArray[oldSize] = newValue

最佳答案

我的追加与调整大小的简单计时实验表明,调整大小的速度大约快 3 倍,这是我能想到的最快的方法。另外,this question 的答案似乎暗示调整数组的大小是可行的方法,因为它是就地的。

判决: 使用调整大小

附言您可能还想查看 this discussion来自 numpy 邮件列表。

关于python - numpy 数组的追加与调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2908672/

相关文章:

python - 在 numpy 中从多个集合中选取并分配多个子集

python - OAuth登录完成后重定向到之前的URL(flask-dance)

C++:以对角线方式处理二维数组元素

python - numpy.astype 与 numba 的非常奇怪的结果

numpy - 计算 scipy LinearOperator : "gmres did not converge" 的特征值时出错

python - numpy 数组中多个元素的索引

python - 具有多个回调函数和使用 after() 的 Tkinter 问题

python - 字典和类

c++ - C 中的字符串连接问题

arrays - 创建哈希表,其中键有多个数组值