Canonical Correlations
Usage
cancor(x, y, xcenter = TRUE, ycenter = TRUE)
Arguments
x
|
numeric matrix (n * p1), containing the
x coordinates.
|
y
|
numeric matrix (n * p2), containing the
y coordinates.
|
xcenter
|
logical or numeric vector of length p1,
describing any centering to be done on the x values before the
analysis. If TRUE (default), subtract the column means.
If FALSE , do not adjust the columns. Otherwise, a vector
of values to be subtracted from the columns.
|
ycenter
|
analogous to xcenter , but for the y values.
|
Description
Compute the canonical correlations between x
and y
.
The canonical correlation analysis seeks linear combinations of the
y variables which are well explained by linear combinations of the x
variables.Value
A list containing the following components:
cor
|
correlations.
|
xcoef
|
estimated coefficients for the x variables.
|
ycoef
|
estimated coefficients for the y variables.
|
xcenter
|
the values used to adjust the x variables.
|
ycenter
|
the values used to adjust the x variables.
|
References
Hotelling H. (1936).
``Relations between two sets of variables''.
Biometrika, 28, 321-327.
Seber, G. A. F. (1984).
Multivariate Analysis.
New York: Wiley, p. 506f.
See Also
qr
,
svd
.Examples
data(LifeCycleSavings)
pop <- LifeCycleSavings[, 2:3]
oec <- LifeCycleSavings[, -(2:3)]
str(cancor(pop, oec))
x <- matrix(rnorm(150), 50, 3)
y <- matrix(rnorm(250), 50, 5)
str(cxy <- cancor(x, y))
all(abs(cor(x %*% cxy$xcoef,
y %*% cxy$ycoef)[,1:3] - diag(cxy $ cor)) < 1e-15)
all(abs(cor(x %*% cxy$xcoef) - diag(3)) < 1e-15)
all(abs(cor(y %*% cxy$ycoef) - diag(5)) < 1e-15)