29 May
2010
29 May
'10
6:45 p.m.
On Sat, May 29, 2010 at 13:35, Keith Goodman
np.random.shuffle: "Modify a sequence in-place by shuffling its contents."
Matches doc string:
a = np.arange(10) np.random.shuffle(a[:-1]) a array([0, 7, 8, 4, 3, 6, 2, 1, 5, 9])
Doesn't match doc string:
l = range(10) np.random.shuffle(l[:-1]) l [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
This behavior does match the doc-string. l[:-1] creates a new list unconnected to the original list. np.random.shuffle() then shuffles that new list in-place.
Is there any way for numpy to catch this?
Nope. -- Robert Kern "I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth." -- Umberto Eco