## Define population
set.seed(333)
p = 25
n = 1000
X = matrix(rnorm(n*p), nrow = n, ncol = p)
colnames(X)[1:25] = letters[1:25]
Cov0 <- covML(X)
mean0 <- colMeans(X)
## Obtain sample from population
samples <- X[sample(nrow(X), 10),]
Cov1 <- covML(samples)
mean1 <- colMeans(samples)
## Regularize singular Cov1
P <- ridgeP(Cov1, 10)
CovR <- solve(P)
## Obtain KL divergence
KLdiv(mean1, mean0, CovR, Cov0)
Run the code above in your browser using DataLab