matlab - Singular Value Decomposition positive value -
i using singular value decomposition (svd) applied singular spectrum analysis (ssa) of timeseries.
% original time series x1= rand(1,10000); n = length(x1); % windows trajectory matrix l = 600; k=n-l+1; % trajectory matrix/matrix of lagged vectors x = buffer(x1, l, l-1, 'nodelay'); % covariance matrix = x * x' / k; % svd [u, s_temp, ~] = svd(a); % eigenvalues of squared eigenvalues of x s = sqrt(s_temp); d = diag(s); % principal components v = x' * u; = 1 : l v(:, i) = v(:, i) / d(i); end
i wanted know if there way have singular components (i.e. columns of v) positive.
x > 0 in case (and covariance matrix a)
you may looking algorithm such non-negative matrix factorization.
this available in statistics toolbox in command nnmf
, , there freely available third-party toolbox well.
Comments
Post a Comment