Main Content

# pcacov

Principal component analysis on covariance matrix

## Syntax

``coeff = pcacov(V)``
``[coeff,latent] = pcacov(V)``
``[coeff,latent,explained] = pcacov(V)``

## Description

example

``coeff = pcacov(V)` performs principal component analysis on the square covariance matrix `V` and returns the principal component coefficients, also known as loadings.`pcacov` does not standardize `V` to have unit variances. To perform principal component analysis on standardized variables, use the correlation matrix `R = V./(SD*SD')`, where `SD = sqrt(diag(V))`, in place of `V`. To perform principal component analysis directly on the data matrix, use `pca`.`

example

``[coeff,latent] = pcacov(V)` also returns a vector containing the principal component variances, meaning the eigenvalues of `V`.`

example

``[coeff,latent,explained] = pcacov(V)` also returns a vector containing the percentage of the total variance explained by each principal component.`

## Examples

collapse all

Create a covariance matrix from the `hald` dataset.

```load hald covx = cov(ingredients);```

Perform principal component analysis on the `covx` variable.

`[coeff,latent,explained] = pcacov(covx)`
```coeff = 4×4 -0.0678 -0.6460 0.5673 0.5062 -0.6785 -0.0200 -0.5440 0.4933 0.0290 0.7553 0.4036 0.5156 0.7309 -0.1085 -0.4684 0.4844 ```
```latent = 4×1 517.7969 67.4964 12.4054 0.2372 ```
```explained = 4×1 86.5974 11.2882 2.0747 0.0397 ```

The first component explains over 85% of the total variance. The first two components explain nearly 98% of the total variance.

## Input Arguments

collapse all

Covariance matrix, specified as a square, symmetric, positive semidefinite matrix.

Data Types: `single` | `double`

## Output Arguments

collapse all

Principal component coefficients, returned as a matrix the same size as `V`. Each column of `coeff` contains coefficients for one principal component. The columns are in order of decreasing component variance.

Principal component variances, returned as a vector with length equal to `size(coeff,1)`. The vector `latent` contains the eigenvalues of `V`.

Percentage of the total variance explained by each principal component, returned as a vector the same size as `latent`. The entries in `explained` range from 0 (none of the variance is explained) to 100 (all of the variance is explained).

## References

[1] Jackson, J. E. A User's Guide to Principal Components. Hoboken, NJ: John Wiley and Sons, 1991.

[2] Jolliffe, I. T. Principal Component Analysis. 2nd ed. New York: Springer-Verlag, 2002.

[3] Krzanowski, W. J. Principles of Multivariate Analysis: A User's Perspective. New York: Oxford University Press, 1988.

[4] Seber, G. A. F. Multivariate Observations, Wiley, 1984.

## Version History

Introduced before R2006a