3 %> @brief Checks whether the columns of X have mean zero up to a certain tolerance.
6 %> @param X Input matrix
7 %> @param tolerance =0.0001 . A value of 0.0001 means that each variable mean needs to be <= 0.01% * its maximum absolute value
8 %> @
return Nothing. If fails, wil generate an error.
10 if nargin < 2 || isempty(tolerance)
14 extremes = max(abs(X), [], 1);
16 idx = find(abs(mm) > extremes*tolerance); %
#ok<*EFIND>
18 irerror(sprintf('X matrix is not mean-centered, for example, %g mean is not acceptable!', mm(idx(1))));
function assert_meancentered(in X, in tolerance)