nanmin() and nanmax() are weak duplicates of min() and max(). They must be removed
Reported by Samuel GOUGEON (@sgougeon)
BUG DESCRIPTION:
----------------
Nan = %nan;
mn = [ 0.3760119 Nan 0.2256303 Nan
Nan Nan Nan Nan
0.2615761 Nan Nan 0.3911574
0.4993494 Nan 0.0485566 0.8300317
]
// ALL these calls return the same results:
min(mn)
nanmin(mn)
min(mn, "r")
nanmin(mn,"r")
min(mn, "c")
nanmin(mn,"c")
// This call is supported by min() and refused by nanmin(). min() already ignores Nan:
a = [ 1 %nan ; 4 4 ];
b = [ %nan 3 ; 3 6 ];
c = [ 2 2 ; %nan %nan];
min(a,b,c)
nanmin(a,b,c)
-->nanmin(a,b,c)
!--error 58
Wrong number of input arguments.
// Therefore: there is not a single reason to keep nanmin(). Please remove it.
// The situation is the same with max() and nanmax(). Please remove nanmax() as well.
Thanks.
HOW TO REPRODUCE THE BUG:
-------------------------
Nan = %nan;
mn = [ 0.3760119 Nan 0.2256303 Nan
Nan Nan Nan Nan
0.2615761 Nan Nan 0.3911574
0.4993494 Nan 0.0485566 0.8300317
]
min(mn)
nanmin(mn)
min(mn, "r")
nanmin(mn,"r")
min(mn, "c")
nanmin(mn,"c")
a= [ 1 %nan ; 4 4 ];
b= [ %nan 3 ; 3 6 ];
c= [ 2 2 ; %nan %nan];
min(a,b,c)
nanmin(a,b,c)