我有三个数组:indices、values和replace_values。我必须遍历indices,用new_values[i]替换old_values[indices[i]]中的每个值。做这件事最快的方法是什么?感觉应该有一些方法可以使用NumPy函数或高级切片而不是普通的for循环来加速它。此代码可以工作,但速度相对较慢: import numpy as np
# Example indices and val
我理解Numpy可以生成数组的索引,这是我们在numpy.where中寻找的值。我的问题是:是否有一个函数可以生成给定多个值的索引。例如,使用此数组
a = np.array([1.,0.,0.,0.,1.,1.,0.,0.,0.,0.,...,1.,1.])如果我只需要指定4个零,并且这个函数可以告诉它的索引,那么我就可以立即用另一个值替换它们
假设我有一个像x[p:-q:n]或x[::n]这样的切片,我想用它生成要传递给numpy.ufunc.reduceat(x, [p, p + n, p + 2 * n, ...])或numpy.ufunc.reduceat(x, [0, n, 2 * n, ...])的索引。最简单、最有效的方法是什么?