Max and min keeping NaNs
Most arithmetic operations propagate NaN values, but max and min ignore them. For example 3+NaN and sum([3 NaN]) return NaN, but max(3, NaN) and max([3 NaN]) return 3.
Sometimes it is useful for max and min to behave like other arithmetic functions. For example, if you wish to set all the negative values in a vector to 0, using max(v, 0), you may not wish also to remove NaNs representing missing data points.
maxNan and minNan are functions which can be used in place of max and min but which return a NaN wherever a comparison with a NaN took place. The various combinations of arguments and results accepted by by max/min are also accepted by maxNan/minNan.
Example:
max([1 2 3; 4 NaN 0])
returns [4 2 3] but
maxNan([1 2 3; 4 NaN 0])
returns [4 NaN 3].
(Note that nanmax and nanmin in the statistics toolbox are the same as max and min.)
Cite As
David Young (2024). Max and min keeping NaNs (https://www.mathworks.com/matlabcentral/fileexchange/44702-max-and-min-keeping-nans), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- MATLAB > Language Fundamentals > Data Types > Numeric Types > NaNs >
Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.0.0.0 |