X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?p=CreaPhase.git;a=blobdiff_plain;f=octave_packages%2Fnan-2.5.5%2Frms.m;fp=octave_packages%2Fnan-2.5.5%2Frms.m;h=29fd06b83b3eef81351d92463db0b788c28c344d;hp=0000000000000000000000000000000000000000;hb=f5f7a74bd8a4900f0b797da6783be80e11a68d86;hpb=1705066eceaaea976f010f669ce8e972f3734b05 diff --git a/octave_packages/nan-2.5.5/rms.m b/octave_packages/nan-2.5.5/rms.m new file mode 100644 index 0000000..29fd06b --- /dev/null +++ b/octave_packages/nan-2.5.5/rms.m @@ -0,0 +1,57 @@ +function o=rms(x,DIM,W) +% RMS calculates the root mean square +% can deal with complex data. +% +% y = rms(x,DIM,W) +% +% DIM dimension +% 1 STD of columns +% 2 STD of rows +% N STD of N-th dimension +% default or []: first DIMENSION, with more than 1 element +% W weights to compute weighted s.d. (default: []) +% if W=[], all weights are 1. +% number of elements in W must match size(x,DIM) +% +% y estimated standard deviation +% +% features: +% - can deal with NaN's (missing values) +% - weighting of data +% - dimension argument also in Octave +% - compatible to Matlab and Octave +% +% see also: SUMSKIPNAN, MEAN + + +% This program is free software; you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation; either version 2 of the License, or +% (at your option) any later version. +% +% This program is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this program; If not, see . + + +% $Id: rms.m 8223 2011-04-20 09:16:06Z schloegl $ +% Copyright (C) 2000-2003,2008,2009 by Alois Schloegl +% This function is part of the NaN-toolbox +% http://pub.ist.ac.at/~schloegl/matlab/NaN/ + + +if nargin<2, + [o,N,ssq] = sumskipnan(x); +elseif nargin<3 + [o,N,ssq] = sumskipnan(x,DIM); +else + [o,N,ssq] = sumskipnan(x,DIM,W); +end; + +o = sqrt(ssq./N); + + \ No newline at end of file