Procrustes Rotations

DESCRIPTION:

Performs procrustes rotations of a matrix toward a target matrix with the options of translation and magnification.

USAGE:

procrustes(amat, target, orthogonal=F, translate=F, magnify=F) 

REQUIRED ARGUMENTS:

amat
the matrix to be rotated. Missing values are not accepted.
target
matrix the same dimension as amat. Missing values are not accepted.

OPTIONAL ARGUMENTS:

orthogonal
logical flag: if TRUE, then the rotation will be orthogonal.
translate
logical flag: if TRUE and if orthogonal is TRUE, then the matrix will be translated toward target.
magnify
logical flag: if TRUE and if orthogonal is TRUE, then the matrix will be magnified by a factor.

VALUE:

rmat
the rotated version of amat.
tmat
the transformation matrix. Thus amat %*% tmat is equal to rmat up to numerical precision.
correlation
This is present only when orthogonal is FALSE.
magnify
number giving the magnification. This is present only when orthogonal is TRUE.
translate
vector giving the translation. This is present only when orthogonal and translate are TRUE.

DETAILS:

The translate and magnify arguments are useful for multi-dimensional scaling.

REFERENCES:

Harman, H. H. (1976). Modern Factor Analysis, 3rd Edition. University of Chicago Press, Chicago.

Mardia, K. V., Kent, J. T. and Bibby, J. M. (1979). Multivariate Analysis. Academic Press, London.

SEE ALSO:

, , , .

EXAMPLES:

prim9.pcl <- princomp(prim9)$loadings 
procrustes(prim9.pcl[,1:4],  
   matrix(rep(rep(1:0,c(3,8)),length=36),9))