Много наборов данных имеют одно или несколько отсутствующих значений. Это удобно для отсутствующих значений кода как NaN (Не Номер), чтобы сохранить структуру наборов данных через несколько переменных и наблюдений.
Нормальные арифметические операции MATLAB® дают к NaN значения, когда операндами является NaN. Удаление NaN значения уничтожили бы матричную структуру. Удаление строк, содержащих NaN значения отбросили бы данные. Функции Statistics and Machine Learning Toolbox™ в следующей таблице удаляют NaN значения только в целях расчета.
| Функция | Описание |
|---|---|
nancov | Ковариационная матрица, игнорируя |
nanmax | Максимум, игнорируя |
nanmean | Среднее значение, игнорируя |
nanmedian | Медиана, игнорируя |
nanmin | Минимум, игнорируя |
nanstd | Стандартное отклонение, игнорируя |
nansum | Суммируйте, игнорируя |
nanvar | Отклонение, игнорируя |
Другие функции Statistics and Machine Learning Toolbox также игнорируют NaN значения. Они включают iqr, kurtosis, mad, prctileОбласть значений, skewness, и trimmean.
Создайте 3х3 матрицу выборочных данных. Удалите два значения данных, заменив их на NaN.
X = magic(3); X([1 5]) = [NaN NaN]
X = 3×3
NaN 1 6
3 NaN 7
4 9 2
Вычислите сумму для каждого столбца матрицы выборочных данных использование sum функция.
s1 = sum(X)
s1 = 1×3
NaN NaN 15
Если столбец содержит NaN значение, затем sum функция возвратит NaN как сумма данных в том столбце.
Для сравнения вычислите сумму для каждого столбца матрицы выборочных данных использование nansum функция.
s2 = nansum(X)
s2 = 1×3
7 10 15
Если столбец содержит NaN значение, затем nansum функция игнорирует NaN значение и возвращает сумму остающихся значений в столбце.