# HG changeset patch # User John W. Eaton # Date 1249583336 14400 # Node ID bb37822e9b82cfb0b729726cae6eb9655b6c4688 # Parent d5570d4b1116f9ab4e01865baa6f86605fb20e1f std.m: correctly work along singleton dimension diff -r d5570d4b1116 -r bb37822e9b82 scripts/ChangeLog --- a/scripts/ChangeLog Thu Aug 06 13:42:17 2009 -0400 +++ b/scripts/ChangeLog Thu Aug 06 14:28:56 2009 -0400 @@ -1,3 +1,8 @@ +2009-08-06 John W. Eaton + + * statistics/base/std.m: Correctly work along singleton dimension. + From Christoph Ellenberger . + 2009-08-06 Jaroslav Hajek * geometry/griddata.m: Optimize. diff -r d5570d4b1116 -r bb37822e9b82 scripts/statistics/base/std.m --- a/scripts/statistics/base/std.m Thu Aug 06 13:42:17 2009 -0400 +++ b/scripts/statistics/base/std.m Thu Aug 06 14:28:56 2009 -0400 @@ -64,7 +64,7 @@ if (nargin < 1 || nargin > 3) print_usage (); endif - if nargin < 3 + if (nargin < 3) dim = find (size (a) > 1, 1); if (isempty (dim)) dim = 1; @@ -76,7 +76,7 @@ n = size (a, dim); if (n == 1) - retval = zeros (sz); + retval = zeros (size (a)); elseif (numel (a) > 0) retval = sqrt (sumsq (center (a, dim), dim) / (n + opt - 1)); else @@ -89,8 +89,9 @@ %! x = ones (10, 2); %! y = [1, 3]; %! assert(std (x) == [0, 0] && abs (std (y) - sqrt (2)) < sqrt (eps)); +%! assert (std (x, 0, 3), zeros (10, 2)) +%! assert (std (ones (3, 1, 2), 0, 2), zeros (3, 1, 2)) %!error std (); %!error std (1, 2, 3, 4); -