[Numpy-discussion] How long does it take to create an array?
Fri Feb 5 14:29:48 CST 2010
On Fri, Feb 5, 2010 at 12:26, Keith Goodman <firstname.lastname@example.org> wrote:
> Why is the second method of converting a list of tuples to an array so
> much faster?
>>> x = range(500)
>>> x = [(z,) for z in x] # <-- e.g. output of a sql database
> [(0,), (1,), (2,), (3,), (4,)]
>>> timeit np.array(x).reshape(-1) # <-- slow
> 1000 loops, best of 3: 832 us per loop
>>> timeit np.array([z for z in x])
> 10000 loops, best of 3: 106 us per loop # <-- fast
When array() gets a sequence of sequences, it has to do more work to
figure out the appropriate shape.
"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
More information about the NumPy-Discussion