nanmedian

Медиана, игнорируя значения NaN

Синтаксис

y = nanmedian(X)
y = nanmedian(X,'all')
y = nanmedian(X,dim)
y = nanmedian(X,vecdim)

Описание

пример

y = nanmedian(X) median X, вычисленного после удаления значений NaN.

Для векторов x nanmedian(x) является медианой остающихся элементов, если значения NaN удалены. Для матриц X nanmedian(X) является вектором - строкой из медиан столбца, если значения NaN удалены. Для многомерных массивов X nanmedian действует по первому неодноэлементному измерению.

y = nanmedian(X,'all') возвращает медиану всех элементов X, вычисленного после удаления значений NaN.

y = nanmedian(X,dim) берет медиану по операционному измерению dim X.

пример

y = nanmedian(X,vecdim) возвращает медиану по размерностям, заданным в векторном vecdim, вычисленном после удаления значений NaN. Каждый элемент vecdim представляет размерность входного массива X. Вывод y имеет длину 1 в заданных операционных размерностях. Другие длины размерности являются тем же самым для X и y. Например, если X является 2 массивом 3 на 4, то nanmedian(X,[1 2]) возвращает 1 массивом 1 на 4. Каждый элемент выходного массива является медианой элементов на соответствующей странице X.

Примеры

свернуть все

Найдите медианы столбца для матричных данных с отсутствующими значениями.

X = magic(3);
X([1 6:9]) = NaN
X = 3×3

   NaN     1   NaN
     3     5   NaN
     4   NaN   NaN

y = nanmedian(X)
y = 1×3

    3.5000    3.0000       NaN

Найдите медиану многомерного массива по нескольким размерностям.

Создайте 3 5 2 массивами X с некоторыми отсутствующими значениями.

X = reshape(1:30,[3 5 2]);
X([10:12 25]) = NaN
X = 
X(:,:,1) =

     1     4     7   NaN    13
     2     5     8   NaN    14
     3     6     9   NaN    15


X(:,:,2) =

    16    19    22   NaN    28
    17    20    23    26    29
    18    21    24    27    30

Найдите медиану каждой страницы X путем определения размерностей 1 и 2 как операционные размерности.

ypage = nanmedian(X,[1 2])
ypage = 
ypage(:,:,1) =

    6.5000


ypage(:,:,2) =

   22.5000

Например, ypage(1,1,1) является медианой non-NaN элементов в X(:,:,1).

Найдите медиану элементов в каждом срезе X(:,i,:) путем определения размерностей 1 и 3 как операционные размерности.

ycol = nanmedian(X,[1 3])
ycol = 1×5

    9.5000   12.5000   15.5000   26.5000   21.5000

Например, ycol(4) является медианой non-NaN элементов в X(:,4,:).

Альтернативная функциональность

Вместо того, чтобы использовать nanmedian, можно использовать функцию MATLAB® median с входным параметром nanflag, заданный как значение 'omitnan'.

Расширенные возможности

Смотрите также

| |

Представлено до R2006a