Hi all,
I dont want to run a loop for this but it should be possible using numpy
"smart" ways.
a = np.ones(30)
idx = np.array([2,3,2]) # there is a duplicate index of 2
a += 2
>>>a
array([ 1., 1., 3., 3., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1.])
But if we do this :
for i in range(idx.shape[0]):
a[idx[i]] += 2
>>> a
array([ 1., 1., 5., 3., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.,
1., 1., 1., 1.])
How to achieve the second result without looping??
Thanks
Santhosh