Compute the average zero measures and total zero measure for a list of matrices.
zeroMeasure(Plist, P, prec = 10^(-5))
A list with components:
Numeric matrix of size \(p\) by \(k\) containing the average zero measure over all length(Plist)
simulations for each element of P
.
Numeric vector containing the indices of all data sets where the estimate was wrong (at least one of the zero measures for the elements of an estimated loadings matrix is equal to 0).
Total zero measure, i.e. the average zero measure over all elements of an estimated loadings matrix and over all estimated loadings matrices.
List of estimated loadings matrices or a single estimated loadings matrix. All these matrices should be numeric matrices of size \(p\) by \(k\).
True loadings matrix, a numeric matrix of size \(p\) by \(k\).
Precision used when determining if an element is non-zero, default is \(10^{-5}\).
We say that all elements with an absolute value smaller than prec
are ``equal to zero''.
Tom Reynkens
The zero measure is a way to compare how correctly a PCA method estimates the sparse loadings matrix P
. For each element of an estimated loadings matrix, it is equal to one if the estimated and true value are both zero or both non-zero, and zero otherwise. We then take the average zero measure over all elements of an estimated loadings matrix and over all estimated loadings matrices which we call the total zero measure.
Hubert, M., Reynkens, T., Schmitt, E. and Verdonck, T. (2016). ``Sparse PCA for High-Dimensional Data with Outliers,'' Technometrics, 58, 424--434.
P <- cbind(c(1,1), c(0,1))
Plist <- list(matrix(1,2,2), P)
zeroMeasure(Plist, P)
Run the code above in your browser using DataLab