Obtains predictions and corresponding credible intervals from an object of class 'JointAI'.
# S3 method for JointAI predict(object, outcome = 1L, newdata, quantiles = c(0.025, 0.975), type = "lp", start = NULL, end = NULL, thin = NULL, exclude_chains = NULL, mess = TRUE, warn = TRUE, return_sample = FALSE, ...)
object inheriting from class 'JointAI'
vector of variable names or integers identifying for which outcome(s) the prediction should be performed.
optional new dataset for prediction. If left empty, the original data is used.
quantiles of the predicted distribution of the outcome
the type of prediction. The default is on the scale of the linear
the first iteration of interest
the last iteration of interest
thinning interval (integer; see
optional vector of the index numbers of chains that should be excluded
logical; should messages be given? Default is
logical; should warnings be given? Default is
logical; should the full sample on which the summary (mean and quantiles) is calculated be returned?#'
currently not used
A list with entries
fit contains the predicted values (mean over the values
calculated from the iterations of the MCMC sample),
contain the specified quantiles (by default 2.5% and 97.5%), and
newdata, extended with
prediction for an ordinal outcome is done with
type = "prob", in
which case the quantiles are an array with three dimensions and are
therefore not included in
model.matrix \(X\) is created from the model formula
(currently fixed effects only) and
newdata. \(X\beta\) is then
calculated for each iteration of the MCMC sample in
n.iter rows and
nrow(newdata) columns. A
subset of the MCMC sample can be selected using
predict cannot calculate
predicted values for cases with missing values in covariates. Predicted
values for such cases are
For repeated measures models prediction currently only uses fixed effects.
Functionality will be extended in the future.
# fit model mod <- lm_imp(y ~ C1 + C2 + I(C2^2), data = wideDF, n.iter = 100) # calculate the fitted values fit <- predict(mod) #> Warning: #> Prediction for cases with missing covariates is not yet implemented. #> I will report “NA” instead of predicted values for those cases. # create dataset for prediction newDF <- predDF(mod, vars = ~ C2) # obtain predicted values pred <- predict(mod, newdata = newDF) # plot predicted values and 95% confidence band matplot(newDF$C2, pred$fitted, lty = c(1, 2, 2), type = "l", col = 1, xlab = 'C2', ylab = 'predicted values')