SVD for a Column Partitioned matrix x. r global successive solutions
svdcp(x, H, r)A list with following components:
a p times r matrix of kx row blocks uk (pk x r); uk'*uk = Identity.
a q times r matrix of ky row blocks vi (qi x r) of axes in Rqi relative to yi; vi^prime*vi = Identity
a kx times ky times r array; with r fixed, each matrix contains kxky values \((u_h'*x_{kh}*v_k)^2\), the partial (squared) singular values relative to xkh.
a p times q matrix
is a row vector which contains the numbers qh, h=1,...,ky, of the partition of x with ky column blocks : sum(qh)=q
The number of wanted successive solutions
Lafosse, R.
The first solution calculates 1+kx normed vectors: the vector u[,1] of
\(R^p\) associated to the kx vectors vi[,1]'s of \(R^{q_i}\). by maximizing
\(\sum_i (u[,1]'*x_i*v_i[,1])^2\), with 1+kx norm constraints. A
value \((u[,1]'*x_i*v_i[,1])^2\) measures the relative link between
\(R^p\) and \(R^{q_i}\) associated to xi. It corresponds to a partial squared
singular value notion, since \(\sum_i (u[,1]'*x_i*v_i[,1])^2=s^2\),
where s is the usual first singular value of x.
The second solution is obtained from the same criterion, but after
replacing each xi by xi-xi*vi[,1]*vi[,1]^prime. And so on for the
successive solutions 1,2,...,r . The biggest number of solutions may
be r=inf(p,qi), when the xi's are supposed with full rank; then
rmax=min([min(H),p]).
Lafosse R. & Hanafi M.(1997) Concordance d'un tableau avec K tableaux: Definition de K+1 uples synthetiques. Revue de Statistique Appliquee vol.45,n.4.
x <- matrix(runif(200),10,20)
s <- svdcp(x,c(5,5,10),1)
ss <- svd(x);ss$d[1]^2
sum(s$s2)
Run the code above in your browser using DataLab