Estimé la matriz de covarianza de la muestra de una muestra y obtengo una matriz simétrica. Con , me gustaría crear -variable normal distribuida R.N. pero por lo tanto necesito la descomposición de Cholesky de . ¿Qué debo hacer si no es positivo definitivo?
Respuesta
¿Demasiados anuncios?
Ian G
Puntos
3498
Puede obtener los resultados de la función nearPD en el paquete Matrix en R. Esto le dará una matriz de valor real.
library(Matrix)
A <- matrix(1, 3,3); A[1,3] <- A[3,1] <- 0
n.A <- nearPD(A, corr=T, do2eigen=FALSE)
n.A$mat
# 3 x 3 Matrix of class "dpoMatrix"
# [,1] [,2] [,3]
# [1,] 1.0000000 0.7606899 0.1572981
# [2,] 0.7606899 1.0000000 0.7606899
# [3,] 0.1572981 0.7606899 1.0000000