Skip to contents

Solving EUSPCA with \(\ell_1\) regularization when a data matrix matrix is explictly given.

Usage

euspca_dat(dat, k, scale, lambda,
  eps1 = 0.05, eps2 = 0.0001, eps.sub = 0.005,
  max.iter.outer = 1000, max.iter.inner = 2000, track=5,
  parm.outer = list(sig = 0.2, tau = 1.1), 
  parm.inner = list(eta = 10, gam = 10^-4, M = 5, beta.min = 10^-15, beta.max = 10^100) )

Arguments

dat

A data matrix.

k

The number of uncorrelated principal components.

lambda

A non-negative scalar. It is a value of tuning parameter \(\lambda\).

scale

Perform EUSPCA on the empirical correlation matrix? If scale=FALSE, the empirical covariance matrix is used. Default is FALSE.

eps1

An accuracy parameter for the objective function.

eps2

An accuracy parameter for the uncorrelated constraint.

eps.sub

An accuracy parameter for the objective function of the subproblem.

max.iter.outer

The maximum number of iterations of the outer algorithm.

max.iter.inner

The maximum number of iterations of the inner algorithm.

parm.outer

A list with parameters in the outer algorithm, \(\sigma\) and \(\tau\). Default is list(sig = 0.2, tau = 1.1).

parm.inner

A list with parameters in the inner algorithm, \(\eta\), \(\gamma\), \(M\), \(\beta_{min}\), and \(\beta_{max}\). Default is list(eta = 10, gam = 10^-4, M = 5, beta.min = 10^-15, beta.max = 10^100).

track

Prints out its progress every track iterations. Default is track=5. If the user does not want to prinit out the progress, use track=NULL.

Value

An “euspca" object is returned. The below are some quantities which the user may be interested in:

V

The solution of EUSPCA with \(\ell_1\) regularization.

loadings

The loadings of the unccorrelated sparse PCs. \(\ell_2\) normalize the rows of V.

p.nz

The percentage of non-zero components in V or loadings.

p.ev

The percentage of explained adjusted total variance.

pc.cor

The correlation matrix of uncorrelated sparse components.

See also