extract_descriptives_mbp_inla: Extraction of descriptive statistics from an INLA object for...

View source: R/extract_descriptives_mbp_inla.R

extract_descriptives_mbp_inlaR Documentation

Extraction of descriptive statistics from an INLA object for base and weighted models

Description

This function takes an INLA object as input and extracts the descriptive statistics (mean and standard deviation) of all the model parameters for the base and weighted models.

Usage

extract_descriptives_mbp_inla(inla.object.base, delta = 0.01, dz = 0.75, diff.logdens = 15)

Arguments

inla.object.base

character string, the name of the INLA object fitted in R-INLA with the base model (non-weighted likelihood, w = 1)

delta

numeric, numerical differentiation step, the weighting factor w = 1 \pm δ, the default value is 0.01.

dz

Step length in the standardized scale used in the construction of the grid, default 0.75.

diff.logdens

The difference of the log.density for the hyperpameters to stop numerical integration using int.strategy='grid'. Default 15.

Details

The numerical value represents δ, the matrix has six columns with names ("mean.minus", "sd.minus", "mean.base", "sd.base", "mean.plus", "sd.plus") for the mean and standard deviation of the marginal posterior distributions from the models with w = 1 - 0.01, w = 1 (base) and w = 1 + 0.01, and has as many rows as there are parameters in the model.

Value

list composed of a numerical matix and a numerical value δ.

See Also

extract_descriptives_inla

Examples

data(eight_schools)
#prior settings
mean_mu<-0
prec_mu<-1/(4^2) 
prec_tau<-1/(5^2)

library(INLA)
HN.prior = "expression:
  tau0 =  1/(5^2);
  sigma = exp(-theta/2);
  log_dens = log(2) - 0.5 * log(2 * pi) + 0.5 * log(tau0);
  log_dens = log_dens - 0.5 * tau0 * sigma^2;
  log_dens = log_dens - log(2) - theta / 2;
  return(log_dens);
"

formula.8schools.HN <- y ~ 1+f(schooln, model="iid", 
                                      hyper = list(prec = list(prior = HN.prior)))

# INLA uses the centered parametrization of the 8 schools model by default
fit.inla.8schools <- inla(formula.8schools.HN,
                                data = eight_schools,
                                family = "gaussian",
                                scale = eight_schools$prec,
                                control.family = list(hyper=list(prec=list(initial = log(1), fixed=TRUE))),
                                control.fixed = list(mean.intercept=mean_mu, prec.intercept=prec_mu),
                                control.compute=list(hyperpar=TRUE),
                                num.threads=1)
                                
del <- 0.01
descriptives_inla_8schools <- extract_descriptives_mbp_inla(inla.obj = fit.inla.8schools, delta = del)

hunansona/ed4bhm documentation built on June 15, 2022, 6:42 p.m.