Main Content

NaN

Crear un arreglo con solo valores NaN

Descripción

X = NaN devuelve la representación de escalar de "no es un número". Las operaciones devuelven NaN cuando tienen resultados numéricos no definidos, como 0/0 o 0*Inf.

ejemplo

X = NaN(n) devuelve una matriz de n por n de valores NaN.

ejemplo

X = NaN(sz1,...,szN) devuelve un arreglo de sz1 por ... por szN de valores NaN en el que sz1,...,szN indica el tamaño de cada dimensión. Por ejemplo, NaN(3,4) devuelve una matriz de 3 por 4.

ejemplo

X = NaN(sz) devuelve un arreglo de valores NaN, donde el vector de tamaño sz define size(X). Por ejemplo, NaN([3 4]) devuelve una matriz de 3 por 4.

ejemplo

X = NaN(___,typename) devuelve un arreglo de valores NaN del tipo de datos typename, que pueden ser 'single' o 'double'.

ejemplo

X = NaN(___,'like',p) devuelve un arreglo de valores NaN del mismo tipo de datos, dispersión y complejidad (real o compleja) que p. Puede especificar typename o 'like', pero no ambos.

Ejemplos

contraer todo

Cree una matriz de 3 por 3 de valores NaN.

X = NaN(3)
X = 3×3

   NaN   NaN   NaN
   NaN   NaN   NaN
   NaN   NaN   NaN

Cree un arreglo de 2 por 3 por 4 de valores NaN y muestre su tamaño.

X = NaN(2,3,4);
size(X)
ans = 1×3

     2     3     4

Cree un arreglo de valores NaN que tenga el mismo tamaño que un arreglo existente.

A = [1 4; 2 5; 3 6];
sz = size(A);
X = NaN(sz)
X = 3×2

   NaN   NaN
   NaN   NaN
   NaN   NaN

Es habitual combinar las dos líneas anteriores de código en una única línea.

X = NaN(size(A));

Cree un vector de 1 por 3 de valores NaN cuyos elementos sean del tipo single.

X = NaN(1,3,'single')
X = 1x3 single row vector

   NaN   NaN   NaN

También puede especificar el tipo de salida en función del tipo de otra variable. Cree una variable p del tipo single. A continuación, cree un vector de valores NaN con el mismo tamaño y tipo que p.

p = single([1 2 3]);
X = NaN(size(p),'like',p)
X = 1x3 single row vector

   NaN   NaN   NaN

Argumentos de entrada

contraer todo

Tamaño de una matriz cuadrada, especificado como valor entero.

  • Si n es 0, X es una matriz vacía.

  • Si n es negativo, se trata como 0.

Tipos de datos: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Tamaño de cada dimensión de una lista, especificado como argumentos de enteros separados.

  • Si el tamaño de una dimensión cualquiera es 0, X es un arreglo vacío.

  • Si el tamaño de una dimensión cualquiera es negativo, se trata como 0.

  • Más allá de la segunda dimensión, NaN ignora las dimensiones finales de longitud 1. Por ejemplo, NaN(3,1,1) crea un vector de 3 por 1 de valores NaN.

Tipos de datos: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Tamaño de cada dimensión de un vector, especificado como vector fila de valores enteros.

  • Si el tamaño de una dimensión cualquiera es 0, X es un arreglo vacío.

  • Si el tamaño de una dimensión cualquiera es negativo, se trata como 0.

  • Más allá de la segunda dimensión, NaN ignora las dimensiones finales de longitud 1. Por ejemplo, NaN([3 1 1]) crea un vector de 3 por 1 de valores NaN.

Tipos de datos: double | single | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Tipo de datos que se desea crear, especificado como 'double' o 'single'.

Prototipo del arreglo que crear, especificado como arreglo.

Tipos de datos: double | single
Soporte de números complejos:

Sugerencias

  • X = NaN devuelve el escalar, el tipo double y la representación de IEEE® de "no es un número". La representación hexadecimal exacta bit a bit de este valor es fff8000000000000. MATLAB® conserva el estado "no es un número" de las representaciones alternativas de NaN y trata todas las representaciones de forma equivalente. En algunos casos especiales, debido a limitaciones de hardware, por ejemplo, MATLAB no conserva el patrón exacto de bits de las representaciones alternativas durante todo el cálculo y, en su lugar, utiliza el patrón canónico de bits de NaN descrito anteriormente.

  • Los valores NaN no son iguales entre sí. Como resultado, las operaciones de comparación que conciernen a NaN devuelven el valor "false", excepto para el operador "no igual" ~=. Por ejemplo, NaN == NaN devuelve el valor lógico 0 (false), pero NaN ~= NaN devuelve el valor lógico 1 (true).

  • Los valores NaN de un vector se tratan como elementos únicos diferentes. Por ejemplo, unique([1 1 NaN NaN]) devuelve el vector fila [1 NaN NaN].

  • Utilice las funciones isnan o ismissing para detectar valores NaN en un arreglo. Utilice la función anynan o anymissing para determinar si cualquier elemento del arreglo es NaN. Utilice la función rmmissing para detectar valores NaN y borrarlos, y la función fillmissing para detectar valores NaN y sustituirlos por valores que no sean NaN.

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a