[Numpy-discussion] arange and floating point arguments
Fri Sep 14 10:54:19 CDT 2007
Ed Schofield wrote:
> Hi everyone,
> This was reported yesterday as a bug in Debian's numpy package:
>>>> len(numpy.arange(0, 0.6, 0.1)) == len(numpy.arange(0, 0.4+0.2, 0.1))
> The cause is this:
> which holds for both numpy's and the standard library's ceil().
>>> 0.6 == (0.4+0.2)
Consequently, not a bug.
> Using arange in this way is a fundamentally unreliable thing to do,
> but is there anything we want to do about this?
Tell people to use linspace(). Yes, it does a slightly different thing; that's
why it works. Most uses of floating point arange() can be cast using linspace()
"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