MVNORM.Rd
This sampler function for BAMLSS uses estimated parameters
and the Hessian
information to create samples from a multivariate normal distribution. Note that smoothing
variance uncertainty is not accounted for, therefore, the resulting credible intervals
are most likely too narrow.
sam_MVNORM(x, y = NULL, family = NULL, start = NULL,
n.samples = 500, hessian = NULL, ...)
MVNORM(x, y = NULL, family = NULL, start = NULL,
n.samples = 500, hessian = NULL, ...)
The x
list, as returned from
function bamlss.frame
, holding all model matrices and other information that is
used for fitting the model. Or an object returned from function bamlss
.
The model response, as returned from function bamlss.frame
.
A bamlss family object, see family.bamlss
.
A named numeric vector containing possible starting values, the names are based on
function parameters
.
Sets the number of samples that should be generated.
The Hessian matrix that should be used. Note that the row and column names
must be the same as the names of the parameters
. If hessian = NULL
the function uses optim
to compute the Hessian if it is not provided
within x
.
Arguments passed to function optim
.
## Simulated data example illustrating
## how to call the sampler function.
## This is done internally within
## the setup of function bamlss().
d <- GAMart()
f <- num ~ s(x1, bs = "ps")
bf <- bamlss.frame(f, data = d, family = "gaussian")
## First, find starting values with optimizer.
o <- with(bf, opt_bfit(x, y, family))
#> AICc 319.2483 logPost -171.078 logLik -149.306 edf 10.088 eps 9.3381 iteration 1
#> AICc 318.9038 logPost -171.536 logLik -148.922 edf 10.292 eps 0.2440 iteration 2
#> AICc 318.9028 logPost -171.603 logLik -148.896 edf 10.316 eps 0.0123 iteration 3
#> AICc 318.9028 logPost -171.604 logLik -148.895 edf 10.316 eps 0.0002 iteration 4
#> AICc 318.9028 logPost -171.604 logLik -148.895 edf 10.316 eps 0.0000 iteration 5
#> AICc 318.9028 logPost -171.604 logLik -148.895 edf 10.316 eps 0.0000 iteration 5
#> elapsed time: 0.03sec
## Sample.
samps <- with(bf, sam_MVNORM(x, y, family, start = o$parameters))
#>
plot(samps)