smart (version 1.0.1)

TCA: Transelliptical Component Analysis

Description

A function to conduct Transelliptical Component Analysis

Usage

TCA(x, K, para, method = "kendall", algorithm = "tp", max.iter = 200, verbose = TRUE, eps.conv = 0.001)

Arguments

x
The n by d data matrix or d by d covariance matrix from the input
K
Number of components
para
A vector of length K, indicating the number of sparse loadings.
method
Method to be used to estimating the correlation matrix with 5 options: pearson, ns, npn, spearman and kendall. kendall as default.
algorithm
Algorithm to be used to obtain sparse loadings with 3 options: sp, spca and pmd. tp as default.
max.iter
Maximum number of iterations.
verbose
If verbose = FALSE, tracing information printing is disabled. The default value is TRUE.
eps.conv
Convergence criterion.

Value

cov.input
An indicator of the sample covariance.
loadings
The loadings of the sparse PCs.
pev
An indicator of the sample covariance.
PC
Projected PCs. existing if cov.input=TRUE.
method
The method used in estimating the correlation matrix.
algorithm
The algorithm used in obtaining the sparse loadings.
K
The number of components.

Details

PCA and Sparse PCA is sensitive to modeling assumption, outliers, missing values data dependency. We propose an alternative way using rank-based methods including ns, npn, spearman and kendall to approximate the correlation matrix. Details are refered to Han,F. and Liu,H. (2012). Three sparse PCA algorithms are used: truncated power (Yuan, X. and Zhang, T. (2011)), spca(Zou,H., Hastie, T., and Tibshirani, R. (2006)) and pmd (Witten, D., Tibshirani, R., and Hastie, T. (2009)).

References

1. Witten, D., Tibshirani, R., and Hastie, T., A penalized matrix decomposition, with applications to sparse principal components and canonical correlation analysis. Biostatistics 2. Yuan, X. and Zhang, T. (2011). Truncated power method for sparse eigenvalue problems. Techinal Report, Rutgers, 2011. 3. Zou, H., Hastie, T. and Tibshirani, R. Sparse principal component analysis. JCGS, 2006.

Examples

Run this code
x=matrix(rnorm(20000),100)
fit=TCA(x,K=6, para=c(10,10,10,5,5,5))
fit
plot(fit)

Run the code above in your browser using DataLab