作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我需要完成以下任务:
来自:
a = array([[1,3,4],[1,2,3]...[1,2,1]])
(每行添加一个元素)到:
a = array([[1,3,4,x],[1,2,3,x]...[1,2,1,x]])
我尝试过类似 a[n] = array([1,3,4,x])
但 numpy 提示形状不匹配。我尝试遍历 a
并将元素 x 附加到每个项目,但未反射(reflect)更改。
关于如何实现这一点的任何想法?
最佳答案
将数据附加到现有数组是任何有 Python 经验的人都想做的事情。但是,如果您发现自己经常附加到大型数组,您会很快发现 NumPy 不会像 python list
那样轻松或有效地做到这一点。您会发现每个“追加”操作都需要重新分配数组内存和短期加倍内存需求。因此,该问题的更通用解决方案是尝试将数组分配为与算法的最终输出一样大。然后对该数组的子集 ( slices ) 执行所有操作。理想情况下,应尽量减少数组的创建和销毁。
也就是说,这通常是不可避免的,执行此操作的函数是:
对于二维数组:
对于 3-D 数组(以上加号):
对于 N 维数组:
关于python - 如何将项目添加到numpy数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5064822/
我是一名优秀的程序员,十分优秀!