ULLGM_BMA {LatentBMA}R Documentation

Bayesian Model Averaging for Poisson Log-Normal and Binomial Logistic-Normal Regression Models

Description

ULLGM_BMA estimates Bayesian regression models using either a Poisson log-normal (PLN) or binomial logistic-normal (BiL) regression framework. It accounts for model uncertainty via Bayesian model averaging.

Usage

ULLGM_BMA(X,
          y,
          model    = "PLN",
          gprior   = "BRIC",
          nsave    = 10000,
          nburn    = 2000,
          Ni       = NULL,
          m        = NULL,
          verbose  = TRUE)

Arguments

X

A n x p design matrix where n is the number of observations and p is the number of explanatory variables.

y

A n x 1 response vector. For PLN and BiL models, this is a count response.

model

Indicates the model to be estimated. Options are "PLN" for the Poisson log-normal model and "BiL" for the binomial logistic-normal model. Default is "PLN".

gprior

Specifies the g-prior to be used. Options under fixed g are "BRIC" (g = max(n, p^2)), "UIP" (g = n), "RIC" (g = p^2), "SQRT-N" (g = sqrt(n)). Options under random g are the hyper-g and hyper-g/n priors of Liang et al. (2008) ("hyper-g(a=3)", "hyper-g(a=4)", "hyper-g/n(a=3)", "hyper-g/n(a=4)"), the prior of Zellner & Siow (1980) ("zellnersiow"), and a Beta(0.5, 0.5) prior on g/(1+g) ("horseshoe"). Default is "BRIC".

nsave

The number of saved posterior samples. Defaults to 10,000.

nburn

The number of initial burn-in samples. Defaults to 2,000.

Ni

A vector containing the number of trials for each observation when estimating a binomial logistic-normal model. Required if model = "BiL".

m

The prior expected model size as per the beta-binomial prior of Ley and Steel (2009). Defaults to p/2, representing a uniform prior on model size.

verbose

Logical indicator of whether progress should be printed during estimation. Default is TRUE.

Value

A list containing the inputs and selected posterior simulation outputs, such as posterior chains for the coefficients and inclusion vectors.

Note

All explanatory variables in X are automatically demeaned within the function. All models do automatically include an intercept term.

References

Liang, F., Paulo, R., Molina, G., Clyde, M. A., & Berger, J. O. (2008). Mixtures of g priors for Bayesian variable selection. Journal of the American Statistical Association, 103(481), 410-423.

Zellner, A., & Siow, A. (1980). Posterior odds ratios for selected regression hypotheses. Trabajos de estadística y de investigación operativa, 31, 585-603.

Ley, E., & Steel, M. F. J. (2009). On the effect of prior assumptions in Bayesian model averaging with applications to growth regression. Journal of Applied Econometrics, 24(4), 651-674.

Examples

# Load package
library(LatentBMA)

# Example 1: Estimate a PLN model under a BRIC prior with m = p/2 using simulated data
# Note: Use more samples for actual analysis
# Note: nsave = 250 and nburn = 250 are for demonstration purposes
X <- matrix(rnorm(100*20), 100, 20)
z <- 2 + X %*% c(0.5, -0.5, rep(0, 18)) + rnorm(100, 0, sqrt(0.25))
y <- rpois(100, exp(z))
results_pln <- ULLGM_BMA(X = X, y = y, model = "PLN", nsave = 250, nburn = 250)

# Example 2: Estimate a BiL model under a Zellner-Siow prior with m = 5 using simulated data
# Note: Use more samples for actual analysis
# Note: nsave = 250 and nburn = 250 are for demonstration purposes
X  <- matrix(rnorm(100*20), 100, 20)
Ni <- rep(50, 100)
z  <- 2 + X %*% c(0.5, -0.5, rep(0, 18)) + rnorm(100, 0, sqrt(0.25))
y  <- rbinom(100, Ni, 1 / (1 + exp(-z)))
results_bil <- ULLGM_BMA(X = X, y = y, Ni = Ni, model = "BiL", nsave = 250, nburn = 250,
                         m = 5, gprior = "zellnersiow")


[Package LatentBMA version 0.1.1 Index]