Description Usage Arguments Value References See Also Examples
View source: R/Gaussian_Inference.r
Generate the the density value of the posterior predictive distribution of the following 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.
Posterior predictive density is p(x|m,V,a,b,X).
1 2 | ## S3 method for class 'GaussianNIG'
dPosteriorPredictive(obj, x, X, LOG = TRUE, ...)
|
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. |
A numeric vector, the posterior predictive density.
Banerjee, Sudipto. "Bayesian Linear Model: Gory Details." Downloaded from http://www. biostat. umn. edu/~ph7440 (2008).
GaussianNIG
, dPosteriorPredictive.GaussianNIG
, marginalLikelihood.GaussianNIG
1 2 3 4 5 6 7 8 9 | obj <- GaussianNIG(gamma=list(m=0,V=1,a=1,b=1))
X <- 1:20
x <- rnorm(20)+ X*0.3
## out1 and out2 it should have the same values:
out1 <- dPosteriorPredictive(obj = obj, x = x,X=X,LOG = TRUE)
out2 <- numeric(length(x))
for(i in 1:length(x))
out2[i] <- marginalLikelihood(obj,x=x[i],X=X[i],LOG = TRUE)
max(abs(out1-out2))
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.