tau_estimate {nlshrink} | R Documentation |
Non-linear shrinkage estimator of population eigenvalues.
Description
The population eigenvalue estimates are computed by numerically
inverting the QuEST function (see references). The starting point is the
linear shrinkage estimate of the population eigenvalues, computed using
linshrink
.
Usage
tau_estimate(X, k = 0, method = "nlminb", control = list())
Arguments
X |
A data matrix. |
k |
(Optional) Non-negative integer less than |
method |
(Optional) The optimization routine used. Choices are
|
control |
(Optional) A list of control parameters. Must correspond to
the selected optimization method. See |
Value
A numeric vector of length ncol(X)
, containing the population
eigenvalue estimates, sorted in ascending order.
NOTE
nlminb
is usually robust and accurate, but does not
allow equality constraints, so, in general, the sum of the estimated
population eigenvalues is not equal to the sum of the sample eigenvalues.
nloptr
enforces an equality constraint to preserve the trace, but is
substantially slower than nlminb
. The default optimizer used for
nloptr
is the Augmented Lagrangian method with local optimization
using LBFGS. These can be modified using the control parameter.
References
Ledoit, O. and Wolf, M. (2015). Spectrum estimation: a unified framework for covariance matrix estimation and PCA in large dimensions. Journal of Multivariate Analysis, 139(2)
Ledoit, O. and Wolf, M. (2016). Numerical Implementation of the QuEST function. arXiv:1601.05870 [stat.CO]
Examples
tau_estimate(X = matrix(rnorm(1e3, mean = 5), nrow = 50, ncol = 20))