CompleteRcvx {fungible} | R Documentation |
Complete a Partially Specified Correlation Matrix by Convex Optimization
Description
This function completes a partially specified correlation matrix by the method of convex optimization. The completed matrix will maximize the log(det(R)) over the space of PSD R matrices.
Usage
CompleteRcvx(Rna, Check_Convexity = TRUE, PRINT = TRUE)
Arguments
Rna |
(matrix) An n x n incomplete correlation matrix. Missing entries must
be specified by |
Check_Convexity |
(logical) If |
PRINT |
(logical) If |
Value
The CompleteCvxR
function returns the following objects.
-
R (matrix) A PSD completed correlation matrix.
-
converged: (Logical) a logical that indicates the convergence status of the optimization.
-
max_delta The maximum absolute difference between the known elements in the partially specified R matrix and the estimated matrix.
-
convergence_status (list) A list containing additional information about the convergence status of the solution.
Author(s)
Niels G. Waller
References
Georgescu, D. I., Higham, N. J., and Peters, G. W. (2018). Explicit solutions to correlation matrix completion problems, with an application to risk management and insurance. Royal Society Open Science, 5(3), 172348.
Olvera Astivia, O. L. (2021). A Note on the general solution to completing partially specified correlation matrices. Measurement: Interdisciplinary Research and Perspectives, 19(2), 115–123.
Examples
## Not run:
Rmiss <- matrix(
c( 1, .25, .6, .55, .65, 0, .4, .6, .2, .3,
.25, 1, 0, 0, 0, 0, NA, NA, NA, NA,
.6, 0, 1, .75, .75, 0, NA, NA, NA, NA,
.55, 0, .75, 1, .5, 0, NA, NA, NA, NA,
.65, 0, .75, .5, 1, 0, NA, NA, NA, NA,
0, 0, 0, 0, 0, 1, NA, NA, NA, NA,
.4, NA, NA, NA, NA, NA, 1, .25, .25, .5,
.6, NA, NA, NA, NA, NA, .25, 1, .25, 0,
.2, NA, NA, NA, NA, NA, .25, .25, 1, 0,
.3, NA, NA, NA, NA, NA, .5, 0, 0, 1), 10,10)
out <- CompleteRcvx(Rna = Rmiss,
Check_Convexity = FALSE,
PRINT = FALSE)
round(out$R, 3)
## End(Not run)