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) of 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(savings)
pop <- savings[, 2:3]
oec <- savings[,-(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)