[Numpy-discussion] Floating point "close" function?

Robert Kern robert.kern at gmail.com
Sat Mar 3 09:34:31 EST 2012


On Sat, Mar 3, 2012 at 14:31, Ralf Gommers <ralf.gommers at googlemail.com> wrote:
>
>
> On Sat, Mar 3, 2012 at 3:05 PM, Robert Kern <robert.kern at gmail.com> wrote:
>>
>> On Sat, Mar 3, 2012 at 13:59, Ralf Gommers <ralf.gommers at googlemail.com>
>> wrote:
>> >
>> >
>> > On Thu, Mar 1, 2012 at 11:44 PM, Joe Kington <jkington at wisc.edu> wrote:
>> >>
>> >> Is there a numpy function for testing floating point equality that
>> >> returns
>> >> a boolean array?
>> >>
>> >> I'm aware of np.allclose, but I need a boolean array.  Properly
>> >> handling
>> >> NaN's and Inf's (as allclose does) would be a nice bonus.
>> >>
>> >> I wrote the function below to do this, but I suspect there's a method
>> >> in
>> >> numpy that I missed.
>> >
>> >
>> > I don't think such a function exists, would be nice to have. How about
>> > just
>> > adding a keyword "return_array" to allclose to do so?
>>
>> As a general design principle, adding a boolean flag that changes the
>> return type is worse than making a new function.
>
>
> That's certainly true as a general principle. Do you have a concrete
> suggestion in this case though?

np.close()

> Because this is also bad:
>>>> np.<TAB>
> Display all 561 possibilities? (y or n)

Not as bad as overloading np.allclose(x,y,return_array=True). Or
deprecating np.allclose() in favor of np.close().all().

-- 
Robert Kern



More information about the NumPy-Discussion mailing list