[Numpy-discussion] nonuniform scatter operations

Geoffrey Irving irving at naml.us
Sun Sep 28 00:34:22 EDT 2008


Hello,

Is there an efficient way to implement a nonuniform gather operation
in numpy?  Specifically, I want to do something like

n,m = 100,1000
X = random.uniform(size=n)
K = random.randint(n, size=m)
Y = random.uniform(size=m)

for k,y in zip(K,Y):
    X[k] += y

but I want it to be fast.  The naive attempt "X[K] += Y" does not
work, since the slice assumes the indices don't repeat.

Thanks,
Geoffrey



More information about the NumPy-Discussion mailing list