PreEst.2014Banerjee: Bayesian Estimation of a Banded Precision Matrix (Banerjee...

View source: R/PreEst.2014Banerjee.R

PreEst.2014BanerjeeR Documentation

Bayesian Estimation of a Banded Precision Matrix (Banerjee 2014)

Description

PreEst.2014Banerjee returns a Bayes estimator of the banded precision matrix using G-Wishart prior. Stein’s loss or squared error loss function is used depending on the “loss” argument in the function. The bandwidth is set at the mode of marginal posterior for the bandwidth parameter.

Usage

PreEst.2014Banerjee(
  X,
  upperK = floor(ncol(X)/2),
  delta = 10,
  logpi = function(k) {
     -k^4
 },
  loss = c("Stein", "Squared")
)

Arguments

X

an (n\times p) data matrix where each row is an observation.

upperK

upper bound of bandwidth k.

delta

hyperparameter for G-Wishart prior. Default value is 10. It has to be larger than 2.

logpi

log of prior distribution for bandwidth k. Default is a function proportional to -k^4.

loss

type of loss; either "Stein" or "Squared".

Value

a named list containing:

C

a (p\times p) MAP estimate for precision matrix.

References

\insertRef

banerjee_posterior_2014CovTools

Examples

## generate data from multivariate normal with Identity precision.
pdim = 10
data = matrix(rnorm(50*pdim), ncol=pdim)

## compare different K
out1 <- PreEst.2014Banerjee(data, upperK=1)
out2 <- PreEst.2014Banerjee(data, upperK=3)
out3 <- PreEst.2014Banerjee(data, upperK=5)

## visualize
opar <- par(no.readonly=TRUE)
par(mfrow=c(2,2), pty="s")
image(diag(pdim)[,pdim:1],main="Original Precision")
image(out1$C[,pdim:1], main="banded1::upperK=1")
image(out2$C[,pdim:1], main="banded1::upperK=3")
image(out3$C[,pdim:1], main="banded1::upperK=5")
par(opar)


kyoustat/CovTools documentation built on Aug. 28, 2023, 2:17 p.m.