我想在我的 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/