Learn R Programming

bbricks (version 0.1.4)

marginalLikelihood.GaussianNIG: Marginal likelihood of a "GaussianNIG" object

Description

Generate the marginal likelihood of the following model structure: $$x \sim Gaussian(X beta,sigma^2)$$ $$sigma^2 \sim InvGamma(a,b)$$ $$beta \sim Gaussian(m,sigma^2 V)$$ Where X is a row vector, or a design matrix where each row is an obervation. InvGamma() is the Inverse-Gamma distribution, Gaussian() is the Gaussian distribution. See ?dInvGamma and dGaussian for the definitions of these distribution. The model structure and prior parameters are stored in a "GaussianNIG" object. Marginal likelihood = p(x|m,V,a,b,X).

Usage

# S3 method for GaussianNIG
marginalLikelihood(obj, x, X, LOG = TRUE, ...)

Arguments

obj

A "GaussianNIG" object.

x

numeric, must satisfy length(x) = nrow(X).

X

matrix, must satisfy length(x) = nrow(X).

LOG

Return the log density if set to "TRUE".

...

Additional arguments to be passed to other inherited types.

Value

numeric, the marginal likelihood.

References

Banerjee, Sudipto. "Bayesian Linear Model: Gory Details." Downloaded from http://www. biostat. umn. edu/~ph7440 (2008).

See Also

GaussianNIG, marginalLikelihood_bySufficientStatistics.GaussianNIG

Examples

Run this code
# NOT RUN {
obj <- GaussianNIG(gamma=list(m=0,V=1,a=1,b=1))
X <- 1:20
x <- rnorm(20)+ X*0.3
marginalLikelihood(obj = obj,x = x, X = X)
marginalLikelihood(obj = obj,x = x, X = X,LOG = FALSE)
# }

Run the code above in your browser using DataLab