Как да разчитам NaN в MATLAB
Стъпка 1
Създайте или получете матрица, съдържаща стойности на NaN: Например, myArray = nan (m, n); "генерирайте m-по-n матрица от стойности на NaN на променливата myArray.
Стъпка 2
Определете дали всяка стойност е равна на NaN, използвайки функцията "isnan ()". Това е необходимо, защото нормалните логически операции, като "==", не могат да сравнят стойностите на NaN. Следващия пример:
myBooleanArray = isnan (myArray);
Стъпка 3
Добавете стойностите в myBooleanArray, за да определите броя на NaN стойностите, съдържащи се в myArray. В MATLAB сумата от операциите работи само в последното измерение. Следователно, в предишния пример на m-by-n myArray, трябва да извикате:
how_many_NaNs = сума (сума (myBooleanArray));
или:
how_many_NaNs = сумата (reshape (myBooleanArray, m * n, 1));
Вторият пример за кодекс преформулира матрицата в едномерна матрица, така че сумата от функцията работи върху цялата матрица.