[Numpy-discussion] Apropos ticked #913
David Cournapeau
david@ar.media.kyoto-u.ac...
Wed Mar 4 23:45:23 CST 2009
Robert Kern wrote:
> On Wed, Mar 4, 2009 at 23:32, Charles R Harris
> <charlesr.harris@gmail.com> wrote:
>
>
>> One thing that still bothers me a bit is the return value of fmax/fmin when
>> comparing two complex nan values. A complex number is a nan whenever the
>> real or imaginary part is nan, and currently the functions return such a
>> number but originally they returned a complex number with both parts set to
>> nan. The current implemetation was a compromise that kept the code simple
>> while never explicitly using a nan value, i.e., the nan came from one of the
>> inputs. I avoided the explicit use of a nan value because the NAN macro was
>> possibly unreliable at the time. I'm open to thoughts on what the behavior
>> should be.
>>
>
> Do we have examples from other implementations?
>
matlab max is similar to our fmax:
max(1, nan) -> 1
max(nan, nan) -> nan
(matlab doc is not clear: they say they ignore nan, but then what's the
point of nanmax ? I cannot see a different behavior between both
functions in matlab)
Then, for complex numbers, matlab does some unexpected things as well.
First:
a = 1 + nan*i -> print NaN + 1.000i
b = nan + 1*i -> print NaN + NaNi
And then:
a = 1 + nan*i;
max(a, a) -> Nan
isreal(a) -> 0
isreal(max(a, a)) -> 1
cheers,
David
More information about the Numpy-discussion
mailing list