cor {base}R Documentation

Correlation and Covariance Matrices

Description

Compute the correlation or covariance matrix of the columns of x and the columns of y.

Usage

cor(x, y=x, use="all.obs")
cov(x, y=x, use="all.obs")

Arguments

x a matrix or data frame.
y a matrix or data frame.
use a character string giving the method for handling missing observations. This must be one of the stringss "all.obs", "complete.obs" or "pairwise.complete.obs" (abbreviations are acceptable).

Details

If use is "all.obs", then the presence of missing observations will cause the computation to fail. If use has the value "complete.obs" then missing values are handled by casewise deletion. Finally, if use has the value "pairwise.complete.obs" then the correlation between each pair of variables is computed using all complete pairs of observations on those variables. This can result in covariance or correlation matrices which are not positive semidefinite.

See Also

cov.wt for weighted covariance computation.

Examples

## Two simple vectors
cor(1:10,2:11)# == 1

## Correlation Matrix of Multivariate sample:
data(longley)
(Cl <- cor(longley))
## Graphical Correlation Matrix:
symnum(Cl) # highly correlated

##--- Missing value treatment:
data(swiss)
C1 <- cov(swiss)
range(eigen(C1, only=T)$val) # 6.19  1921
swiss[1,2] <- swiss[7,3] <- swiss[25,5] <- NA # create 3 "missing"

 C2 <- cov(swiss) # Error: missing obs...

C2 <- cov(swiss, use = "complete")
range(eigen(C2, only=T)$val) # 6.46  1930
C3 <- cov(swiss, use = "pairwise")
range(eigen(C3, only=T)$val) # 6.19  1938

[Package Contents]