Home > ctdcal > nan_std.m

nan_std

PURPOSE ^

SYNOPSIS ^

function y = nan_std(x)

DESCRIPTION ^

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function y = nan_std(x)
0002 
0003 nans = isnan(x);
0004 i = find(nans);
0005 
0006 % Find mean
0007 avg = nan_mean(x);
0008 
0009 if min(size(x))==1,
0010    count = length(x)-sum(nans);
0011    x = x - avg;
0012 else
0013    count = size(x,1)-sum(nans);
0014    x = x - avg(ones(size(x,1),1),:);
0015 end
0016 
0017 % Replace NaNs with zeros.
0018 x(i) = zeros(size(i));
0019 
0020 % Protect against a column of all NaNs
0021 i = find(count==0);
0022 count(i) = ones(size(i));
0023 y = sqrt(sum(x.*x)./max(count-1,1));
0024 y(i) = i + NaN;

Generated on Fri 08-Oct-2004 11:57:17 by m2html © 2003