NaN

Не число

Синтаксис

NaN
N = NaN(n)
N = NaN(sz1,...,szN)
N = NaN(sz)
N = NaN(classname)
N = NaN(n,classname)
N = NaN(sz1,...szN,classname)
N = NaN(sz,classname)
N = NaN('like',p)
N = NaN(n,'like',p)
N = NaN(sz1,...szN,'like',p)
N = NaN(sz,'like',p)

Описание

NaN возвращает представление арифметики IEEE® для Не числа (NaN). Эти значения следуют из операций, которые имеют неопределенные числовые результаты.

N = NaN(n) является n-by-n матрица значений NaN.

N = NaN(sz1,...,szN) является sz1...-by-szN массивом значений NaN, где sz1,...,szN указывает на размер каждой размерности. Например, NaN(3,4) возвращает массив 3 на 4 значений NaN.

N = NaN(sz) является массивом значений NaN, где вектор размера, sz, задает size(N). Например, NaN([3,4]) возвращает массив 3 на 4 значений NaN.

Примечание

Входной sz1,...,szN размера, а также элементы вектора размера sz, должен быть неотрицательными целыми числами. Отрицательные целые числа обработаны как 0.

N = NaN(classname) возвращает значение NaN, где строка, classname, задает тип данных. classname может быть или 'single' или 'double'.

N = NaN(n,classname) возвращает n-by-n массив значений NaN типа данных classname.

N = NaN(sz1,...szN,classname) возвращает sz1...-by-szN массивом значений NaN типа данных classname.

N = NaN(sz,classname) возвращает массив значений NaN, где вектор размера, sz, задает size(N), и classname задает class(N).

N = NaN('like',p) возвращает значение NaN совпадающего типа данных, разреженности и сложности (действительный или комплексный) как числовая переменная, p.

N = NaN(n,'like',p) возвращает n-by-n массив значений NaN как p.

N = NaN(sz1,...szN,'like',p) возвращает sz1...-by-szN массивом значений NaN как p.

N = NaN(sz,'like',p) возвращает массив значений NaN как p, где вектор размера, sz, задает size(N).

Примеры

Эти операции производят NaN:

  • Любая арифметическая операция на NaN, такой как sqrt(NaN)

  • Сложение или вычитание, такое как вычитание значения бесконечностей как (+Inf)+(-Inf)

  • Умножение, такое как 0*Inf

  • Деление, такое как 0/0 и Inf/Inf

  • Остаток, такой как rem(x,y), где y является нулем или x, является бесконечностью

Советы

Поскольку два NaN s не равен друг другу, логические операции, включающие NaN s всегда, возвращают false, кроме ~ = (не равный). Следовательно,

NaN ~= NaN 
ans =
     1
NaN == NaN
ans =
     0

и NaN s в векторе обработан как различные уникальные элементы.

unique([1 1 NaN NaN])
ans = 
     1 NaN NaN

Используйте функцию isnan, чтобы обнаружить NaN s в массиве.

isnan([1 1 NaN NaN])
ans =
     0     0     1     1

Расширенные возможности

Представлено до R2006a

Была ли эта тема полезной?