Cómo contar el NaN en MATLAB

MATLAB es una aplicación para programar operaciones matemáticas.
Por chris daniels

Paso 1

Crea u obtén una matriz que contenga valores NaN: Por ejemplo, myArray = nan(m,n);" genera una matriz m-by-n de valores NaN a la variable myArray.


Paso 2

Determina si cada valor es igual a NaN usando la función "isnan()". Esto es necesario pues las operaciones lógicas normales, como "==", son incapaces de comparar valores NaN. Siguiendo el ejemplo anterior:

myBooleanArray = isnan(myArray);


Paso 3

Suma los valores en myBooleanArray para determinar el número de valores NaN contenidos en myArray. En MATLAB, la suma de operaciones solamente opera en la última dimensión. Por lo tanto, en el ejemplo anterior de m-by-n myArray, es necesario que o bien llames:

how_many_NaNs = sum(sum(myBooleanArray));

o:

how_many_NaNs = sum(reshape(myBooleanArray,m*n,1));

El segundo ejemplo de código reconfigura la matriz en una matriz unidimensional, de forma que la suma de la función trabaja sobre toda la matriz.