Como contar o NaN no MATLAB

No ambiente de programação matemática do MATLAB, NaN é um valor especial que significa “não é um número”. Os valores de NaN podem surgir em suas variáveis ​​nos casos em que uma operação incomum ocorre, como a divisão de zero. Também pode ocorrer em certas operações infinitas, representadas como + Inf e -Inf no MATLAB. Os valores de NaN também podem surgir ao importar dados de arquivos corrompidos ou formatos incomuns. O MATLAB oferece funções especiais para lidar com matrizes que contêm valores de NaN.

Passo 1

Crie ou obtenha uma matriz contendo valores de NaN: Por exemplo, myArray = nan (m, n); “gera uma matriz m por n de valores de NaN para a variável myArray.

Etapa 2

Determine se cada valor é igual a NaN usando a função “isnan ()”. Isso é necessário, pois operações lógicas normais, como “==”, não conseguem comparar os valores de NaN. Seguindo o exemplo anterior:

myBooleanArray = isnan (myArray);

Etapa 3

Adicione os valores em myBooleanArray para determinar o número de valores NaN contidos em myArray. No MATLAB, a soma das operações opera apenas na última dimensão. Portanto, no exemplo anterior de m-by-n myArray, você precisa chamar:

how_many_NaNs = sum (soma (myBooleanArray));

ou:

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

O segundo exemplo de código reconfigura a matriz em uma matriz unidimensional, para que a soma da função funcione em toda a matriz.

Referências

 

Você pode estar interessado:

Deixe um comentário