This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materials including this page, select Japan from the country navigator on the bottom of this page.


Standard deviation ignoring NaNs


y = nanstd(X)
y = nanstd(X,1)
y = nanstd(X,FLAG,DIM)



Financial times series object.


Normalization flag.


Dimension along which the operation is conducted.


nanstd for financial times series objects is based on the Statistics and Machine Learning Toolbox™ function nanstd. See nanstd.

y = nanstd(X) returns the sample standard deviation of the values in a financial time series object X, treating NaNs as missing values. y is the standard deviation of the non-NaN elements of X.

nanstd normalizes y by (N1), where N is the sample size. This is the square root of an unbiased estimator of the variance of the population from which X is drawn, as long as X consists of independent, identically distributed samples and data are missing at random.

y = nanstd(X,1) normalizes by N and produces the square root of the second moment of the sample about its mean. nanstd(X,0) is the same as nanstd(X).

y = nanstd(X,flag,dim) takes the standard deviation along the dimension dim of X. Set the value of flag to 0 to normalize the result by n1; set the value of flag to 1 to normalize the result by n.


To compute nanstd for the following dates:

dates = {'01-Jan-2007';'02-Jan-2007';'03-Jan-2007'};
f = fints(dates, magic(3));
f.series1(1) = nan;
f.series2(3) = nan;
f.series3(2) = nan;

nstd = nanstd(f)
nstd =

          0.71          2.83          2.83

Introduced before R2006a

Was this topic helpful?