在NumPy中是否有一种更简单和更内存高效的方法来执行以下操作。
import numpy as np
ar = np.array(a[l:r])
ar += c
a = a[0:l] + ar.tolist() + a[r:]
这看起来可能有些原始,但它涉及到获取给定数组的子数组副本,然后准备两个相同的副本,以左右方向附加标量添加。我希望能找到更多优化的方法。我想要一个完全在Python列表或NumPy数组中的解决方案,而不是两者兼用,因为在数据很大时,从一种形式转换为另一种形式会造成严重的开销。
c
添加到a
数组的一个切片中,就地执行操作... 那么对于你的示例,a[l:r] += c
是否可行(假设a
是 NumPy 数组)? - Alex Riley