posdef.correction: Positive definiteness correction for a given symmetric sqaure...

View source: R/pdcor.R

posdef.correctionR Documentation

Positive definiteness correction for a given symmetric sqaure matrix

Description

This function is used to find an optimal positive definite matrix for a given symmetric matrix. First, it proposes a d-length sequence of exponent parameters, which constructs the candidates of smallest positive eigenvalues with the minimal positive eigenvalue of the given matrix. The smallest positive eigenvalues is determined by a penalized minimal Frobenius norm equation. This method is implemented from Huang & Chao's paper (2017).

Usage

posdef.correction(Sigma, d)

Arguments

Sigma

matrix for calibration

d

number of proposed smallest positive eigenvalues

Details

Reference: Huang, Chao, Daniel Farewell, and Jianxin Pan. "A calibration method for non-positive definite covariance matrix in multivariate data analysis." Journal of Multivariate Analysis 157 (2017): 45-52.

Value

    calibrated positive definite matrix

Examples

p=10
set.seed(1)
mat = matrix(runif(p^2),p,p)
mat = mat + t(mat)
diag(mat) = 4
print(eigen(mat)$values)
mat1 = posdef.correction(mat,d=20)
print(eigen(mat1)$values)


sdzhao/cole documentation built on May 2, 2022, 9:42 a.m.