Robust PCA using the Cauchy distribution {cauchypca}R Documentation

Robust PCA using the Cauchy distribution

Description

Robust PCA using the Cauchy distribution.

Usage

cauchy.pca(x, k = 1, center = "sm", scale = "mad", trials = 20, parallel = FALSE)

Arguments

x

A numerical matrix with the data.

k

The number of eigenvectors to extract.

center

The way to center the data. This can be either "sm" corresponding to the spatial median, "med" corresponding to the classical variable-wise median. Alternatively the user can specify their own vector.

scale

This is the method to scale the data. The default value is "mad" corresponding to the mean absolute deviation, computed column-wise. Alternatively the user can provide their own vector.

trials

The number of trials to attempt. How many times the algorithm will be performed with different starting values (different starting vectors).

parallel

If you want parallel computations set this equal to TRUE.

Details

This is the main function used to extract the Cauchy robust eigenvectors.

Value

A list including:

runtime

The duration (in seconds) of the algorithm.

loglik

The minimum maximum Cauchy log-likelihood.

mu

The estimated location parameter of the Cauchy ditribution.

su

The estimated scale parameter of the Cauchy ditribution.

loadings

A matrix with the robust eigenvectors.

Author(s)

Michail Tsagris, Aisha Fayomi, Yannis Pantazis and Andrew T.A. Wood.

R implementation and documentation: Michail Tsagris mtsagris@uoc.gr.

References

Fayomi A., Pantazis Y., Tsagris M. and Wood A.T.A. (2024). Cauchy robust principal component analysis with applications to high-dimensional data sets. Statistics and Computing, 34: 26. https://doi.org/10.1007/s11222-023-10328-x

See Also

cauchy.mle

Examples

x <- as.matrix( iris[, 1:4] )
cauchy.pca(x, k = 1)

[Package cauchypca version 1.3 Index]