nanstd

Стандартное отклонение, игнорируя значения NaN

Синтаксис

y = nanstd(X)
y = nanstd(X,flag)
y = nanstd(X,flag,'all')
y = nanstd(X,flag,dim)
y = nanstd(X,flag,vecdim)

Описание

пример

y = nanstd(X) стандартное отклонение std X, вычисленного после удаления всех значений NaN.

  • Если X является вектором, то nanstd(X) является демонстрационным стандартным отклонением всех non-NaN элементов X.

  • Если X является матрицей, то nanstd(X) является вектором - строкой из демонстрационных стандартных отклонений столбца, вычисленных после удаления значений NaN.

  • Если X является многомерным массивом, то nanstd действует по первому неодноэлементному измерению X. Размер этой размерности становится 1, в то время как размеры всех других размерностей остаются то же самое. nanstd удаляет все значения NaN.

  • По умолчанию nanstd нормирует y n – 1, где n является количеством остающихся наблюдений после удаления наблюдений со значениями NaN.

пример

y = nanstd(X,flag) возвращает стандартное отклонение X на основе нормализации, заданной flag. flag является 0 (значение по умолчанию) или 1, чтобы задать нормализацию n – 1 или n, соответственно, где n является количеством остающихся наблюдений после удаления наблюдений со значениями NaN.

пример

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

пример

y = nanstd(X,flag,dim) возвращает стандартное отклонение по операционному измерению dim X, вычисленного после удаления значений NaN.

пример

y = nanstd(X,flag,vecdim) возвращает стандартное отклонение по размерностям, заданным в векторном vecdim. Функция вычисляет стандартные отклонения после удаления значений NaN. Например, если X является матрицей, то nanstd(X,0,[1 2]) является демонстрационным стандартным отклонением всех non-NaN элементов X, потому что каждый элемент матрицы содержится в срезе массивов, заданном размерностями 1 и 2.

Примеры

свернуть все

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

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

   NaN     1   NaN
     3     5   NaN
     4   NaN   NaN

y = nanstd(X)
y = 1×3

    0.7071    2.8284       NaN

Загрузите набор данных carsmall.

load carsmall

Вычислите генеральную совокупность и демонстрационные стандартные отклонения для данных Horsepower. Функция nanstd игнорирует отсутствующее значение в Horsepower.

y1 = nanstd(Horsepower,1)   % Population formula
y1 = 45.2963
y2 = nanstd(Horsepower,0)   % Sample formula
y2 = 45.5268

Найдите стандартное отклонение всех значений в массиве, игнорируя отсутствующие значения.

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

X = reshape(1:24,[3 4 2]);
X([8:10 18]) = NaN
X = 
X(:,:,1) =

     1     4     7   NaN
     2     5   NaN    11
     3     6   NaN    12


X(:,:,2) =

    13    16    19    22
    14    17    20    23
    15   NaN    21    24

Найдите демонстрационное стандартное отклонение элементов X.

y = nanstd(X,0,'all')
y = 7.5385

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

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

   NaN     1   NaN
     3     5   NaN
     4   NaN   NaN

y = nanstd(X,0,2)
y = 3×1

         0
    1.4142
         0

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

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

X = reshape(1:24,[3 4 2]);
X([8:10 18]) = NaN
X = 
X(:,:,1) =

     1     4     7   NaN
     2     5   NaN    11
     3     6   NaN    12


X(:,:,2) =

    13    16    19    22
    14    17    20    23
    15   NaN    21    24

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

ypage = nanstd(X,0,[1 2])
ypage = 
ypage(:,:,1) =

    3.8079


ypage(:,:,2) =

    3.7779

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

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

yrow = nanstd(X,0,[2 3])
yrow = 3×1

    7.9102
    7.6904
    8.2158

Например, yrow(3) является демонстрационным стандартным отклонением non-NaN элементов в X(3,:,:).

Входные параметры

свернуть все

Входные данные, заданные как скаляр, вектор, матрица или многомерный массив.

Типы данных: single | double

Индикатор для нормализации раньше вычислял стандартное отклонение, заданное как 0 или 1.

Типы данных: single | double

Величина для работы, заданная как положительный целый скаляр. Если вы не задаете значение, то значение по умолчанию является первым измерением массива, размер которого не равняется 1.

dim указывает на размерность, длина которой уменьшает до 1. size(y,dim) равняется 1, в то время как размеры всех других размерностей остаются то же самое.

Считайте двумерный массив X:

  • Если dim равен 1, то nanstd(X,0,1) возвращает вектор - строку, содержащий демонстрационное стандартное отклонение для каждого столбца.

  • Если dim равен 2, то nanstd(X,0,2) возвращает вектор-столбец, содержащий демонстрационное стандартное отклонение для каждой строки.

Если dim больше, чем ndims(X) или если size(X,dim) равняется 1, то nanstd возвращает массив нулей с теми же размерностями и отсутствующими значениями как X.

Типы данных: single | double

Вектор размерностей, заданных как положительный целочисленный вектор. Каждый элемент vecdim представляет размерность входного массива X. Вывод y имеет длину 1 в заданных операционных размерностях. Другие длины размерности являются тем же самым для X и y.

Например, если X является 2 3х3 массивом, то nanstd(X,0,[1 2]) возвращает 1 1 3 массивами. Каждый элемент выходного массива является демонстрационным стандартным отклонением элементов на соответствующей странице X.

Типы данных: single | double

Выходные аргументы

свернуть все

Значения стандартного отклонения, возвращенные как скаляр, вектор, матрица или многомерный массив.

Больше о

свернуть все

Демонстрационное стандартное отклонение

Демонстрационным стандартным отклонением S дают

S=i=1n(xiX¯)2n1.

S является квадратным корнем из несмещенного средства оценки отклонения генеральной совокупности, от которой X чертится, пока X состоит из независимых, тождественно распределенных выборок. X¯ демонстрационное среднее значение.

Заметьте, что знаменателем в этой формуле отклонения является n – 1.

Стандартное отклонение генеральной совокупности

Если данные являются целой генеральной совокупностью значений, то можно использовать стандартное отклонение генеральной совокупности,

σ=i=1n(xiμ)2n.

Если X является случайной выборкой от генеральной совокупности, то средний μ оценивается демонстрационным средним значением, и σ является смещенным средством оценки наибольшего правдоподобия стандартного отклонения генеральной совокупности.

Заметьте, что знаменателем в этой формуле отклонения является n.

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

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

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

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

| | |

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

Для просмотра документации необходимо авторизоваться на сайте