# PcaLocantore: Spherical Principal Components In rrcov: Scalable Robust Estimators with High Breakdown Point

## Description

The Spherical Principal Components procedure was proposed by Locantore et al., (1999) as a functional data analysis method. The idea is to perform classical PCA on the data, \ projected onto a unit sphere. The estimates of the eigenvectors are consistent and the procedure is extremely fast. The simulations of Maronna (2005) show that this method has very good performance.

## Usage

 ```1 2 3 4 5 6 7``` ```PcaLocantore(x, ...) ## Default S3 method: PcaLocantore(x, k = ncol(x), kmax = ncol(x), delta = 0.001, na.action = na.fail, scale = FALSE, signflip = TRUE, crit.pca.distances = 0.975, trace=FALSE, ...) ## S3 method for class 'formula' PcaLocantore(formula, data = NULL, subset, na.action, ...) ```

## Arguments

 `formula` a formula with no response variable, referring only to numeric variables. `data` an optional data frame (or similar: see `model.frame`) containing the variables in the formula `formula`. `subset` an optional vector used to select rows (observations) of the data matrix `x`. `na.action` a function which indicates what should happen when the data contain `NA`s. The default is set by the `na.action` setting of `options`, and is `na.fail` if that is unset. The default is `na.omit`. `...` arguments passed to or from other methods. `x` a numeric matrix (or data frame) which provides the data for the principal components analysis. `k` number of principal components to compute. If `k` is missing, or `k = 0`, the algorithm itself will determine the number of components by finding such `k` that l_k/l_1 >= 10.E-3 and Σ_{j=1}^k l_j/Σ_{j=1}^r l_j >= 0.8. It is preferable to investigate the scree plot in order to choose the number of components and then run again. Default is `k=ncol(x)`. `kmax` maximal number of principal components to compute. Default is `kmax=10`. If `k` is provided, `kmax` does not need to be specified, unless `k` is larger than 10. `delta` an accuracy parameter `scale` a value indicating whether and how the variables should be scaled to have unit variance (only possible if there are no constant variables). If `scale=FALSE` (default) or `scale=NULL` no scaling is performed (a vector of 1s is returned in the scale slot). If `scale=TRUE` the data are scaled by `mad`. Alternatively it can be a function like `sd` or `Qn` or a vector of length equal the number of columns of `x`. The value is passed to the underlying function and the result returned is stored in the scale slot. Default is `scale=FALSE`. `signflip` a logical value indicating wheather to try to solve the sign indeterminancy of the loadings - ad hoc approach setting the maximum element in a singular vector to be positive. Default is `signflip = FALSE` `crit.pca.distances` criterion to use for computing the cutoff values for the orthogonal and score distances. Default is 0.975. `trace` whether to print intermediate results. Default is `trace = FALSE`

## Details

`PcaLocantore`, serving as a constructor for objects of class `PcaLocantore-class` is a generic function with "formula" and "default" methods. For details see the relevant references.

## Value

An S4 object of class `PcaLocantore-class` which is a subclass of the virtual class `PcaRobust-class`.

## Author(s)

Valentin Todorov [email protected] The SPC algorithm is implemented on the bases of the available from the web site of the book Maronna et al. (2006) code http://www.wiley.com/legacy/wileychi/robust_statistics/

## References

N. Locantore, J. Marron, D. Simpson, N. Tripoli, J. Zhang and K. Cohen K. (1999), Robust principal components for functional data. Test, 8, 1-28.

R. Maronna, D. Martin and V. Yohai (2006), Robust Statistics: Theory and Methods. Wiley, New York.

R. Maronna (2005). Principal components and orthogonal regression based on robust scales. Technometrics, 47, 264-273.

Todorov V & Filzmoser P (2009), An Object Oriented Framework for Robust Multivariate Analysis. Journal of Statistical Software, 32(3), 1–47. URL http://www.jstatsoft.org/v32/i03/.

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27``` ```## PCA of the Hawkins Bradu Kass's Artificial Data ## using all 4 variables data(hbk) pca <- PcaLocantore(hbk) pca ## Compare with the classical PCA prcomp(hbk) ## or PcaClassic(hbk) ## If you want to print the scores too, use print(pca, print.x=TRUE) ## Using the formula interface PcaLocantore(~., data=hbk) ## To plot the results: plot(pca) # distance plot pca2 <- PcaLocantore(hbk, k=2) plot(pca2) # PCA diagnostic plot (or outlier map) ## Use the standard plots available for for prcomp and princomp screeplot(pca) biplot(pca) ```

rrcov documentation built on May 30, 2017, 3:23 a.m.