| MATLAB® | ![]() |
NaN
NaN returns the IEEE arithmetic representation for Not-a-Number (NaN). These result from operations which have undefined numerical results.
NaN('double') is the same as NaN with no inputs.
NaN('single') is the single precision representation of NaN.
NaN(n) is an n-by-n matrix of NaNs.
NaN(m,n) or NaN([m,n]) is an m-by-n matrix of NaNs.
NaN(m,n,p,...) or NaN([m,n,p,...]) is an m-by-n-by-p-by-... array of NaNs.
Note The size inputs m, n, p, ... should be nonnegative integers. Negative integers are treated as 0. |
NaN(...,classname) is an array of NaNs of class specified by classname. classname must be either 'single' or 'double'.
These operations produce NaN:
Any arithmetic operation on a NaN, such as sqrt(NaN)
Addition or subtraction, such as magnitude subtraction of infinities as (+Inf)+(-Inf)
Multiplication, such as 0*Inf
Division, such as 0/0 and Inf/Inf
Remainder, such as rem(x,y) where y is zero or x is infinity
Because two NaNs are not equal to each other, logical operations involving NaNs always return false, except ~= (not equal). Consequently,
NaN ~= NaN
ans =
1
NaN == NaN
ans =
0and the NaNs in a vector are treated as different unique elements.
unique([1 1 NaN NaN])
ans =
1 NaN NaNUse the isnan function to detect NaNs in an array.
isnan([1 1 NaN NaN])
ans =
0 0 1 1![]() | namelengthmax | nargchk | ![]() |

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.
| © 1984-2009- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |