[Numpy-discussion] min() of array containing NaN

Norbert Nemec Norbert.Nemec.list@gmx...
Thu Aug 14 02:15:43 CDT 2008


Travis E. Oliphant wrote:
> Thomas J. Duck wrote:
>   
>> Determining the minimum value of an array that contains NaN produces  
>> a surprising result:
>>
>>  >>> x = numpy.array([0,1,2,numpy.nan,4,5,6])
>>  >>> x.min()
>> 4.0
>>
>> I expected 0.0.  Is this the intended behaviour or a bug?  I am using  
>> numpy 1.1.1.
>>   
>>     
> NAN's don't play well with comparisons because comparison with them is 
> undefined.    See  numpy.nanmin
>   
This is not true! Each single comparison with a NaN has a well defined 
outcome. The difficulty is only that certain logical assumptions do not 
hold any more when NaNs are involved (e.g. [A<B] is not equivalent with 
[not(A>=B)]). Assuming an IEEE compliant processor and C compiler, it 
should be possible to code a NaN safe min routine without additional 
overhead.



More information about the Numpy-discussion mailing list