[Numpy-discussion] In-place fancy selection
Francesc Altet
faltet@carabos....
Thu Mar 1 14:10:03 CST 2007
Hi,
I don't think there is a solution for this, but perhaps anybody may
offer some idea. Given:
In [79]:a=numpy.arange(9,-1,-1)
In [80]:b=numpy.arange(10)
In [81]:numpy.random.shuffle(b)
In [82]:b
Out[82]:array([2, 6, 3, 5, 4, 9, 0, 8, 7, 1])
In [83]:a=a[b]
In [84]:a
Out[84]:array([7, 3, 6, 4, 5, 0, 9, 1, 2, 8])
is there a way to make the step 83 without having to keep 3 arrays
in-memory at the same time? This is, some way of doing fancy indexing,
but changing the elements *inplace*. The idea is to keep memory
requeriments as low as possible when a and b are large arrays.
Thanks!
--
Francesc Altet | Be careful about using the following code --
Carabos Coop. V. | I've only proven that it works,
www.carabos.com | I haven't tested it. -- Donald Knuth
More information about the Numpy-discussion
mailing list