Come Contare il NaN in MATLAB

March 10

Come Contare il NaN in MATLAB


Nella matematica ambiente di programmazione MATLAB, Nan è un valore speciale che significa non un numero. I valori di Nan possono sorgere nelle variabili nei casi in cui si verifica un intervento insolito, ad esempio divisione per zero. Può anche accadere in alcune operazioni con l'infinito, rappresentati come + Inf e -Inf in MATLAB. valori NaN possono verificarsi anche durante l'importazione di dati da un file danneggiato o un formato insolito. MATLAB offre funzioni speciali per trattare con gli array contenenti valori NaN.

istruzione

1 Creare o ottenere una matrice contenente valori NaN. Per esempio "myArray = nan (m, n);" restituisce una matrice m-by-n di valori NaN alla myArray variabile.

2 Determinare se ogni valore è pari a NaN utilizzando il "isNaN ()" la funzione. Questo è necessario perché le normali operazioni logiche, come ad esempio "==", sono in grado di confrontare i valori NaN. Seguendo l'esempio precedente:

myBooleanArray = isNaN (myArray);

3 Sommare i valori in myBooleanArray per determinare il numero di valori NaN contenuti in myArray. In MATLAB, l'operazione di somma opera solo su l'ultima dimensione. Così, nell'esempio di cui sopra di un m-by-n myArray, si sia bisogno di chiamare:

how_many_NaNs = somma (somma (myBooleanArray));

o:

how_many_NaNs = somma (rimodellare (myBooleanArray, m * n, 1));

Il secondo codice esempio rimodella la matrice in una matrice unidimensionale, in modo che la funzione somma lavora l'intero array.