Predictions from a hhh4
Model
hhh4_predict.Rd
Get fitted (component) means from a hhh4
model.
Usage
# S3 method for class 'hhh4'
predict(object, newSubset=object$control$subset,
type="response", ...)
Arguments
- object
fitted
hhh4
model (class"hhh4"
).- newSubset
subset of time points for which to return the predictions. Defaults to the subset used for fitting the model, and must be a subset of
1:nrow(object$stsObj)
.- type
the type of prediction required. The default (
"response"
or, equivalently,"mean"
) is on the scale of the response variable (mean = endemic plus epidemic components). The alternatives are:"endemic"
,"epidemic"
,"epi.own"
(i.e. the autoregressive part), and"epi.neighbours"
(i.e. the spatio-temporal part).- ...
unused (argument of the generic).
Note
Predictions for “newdata”, i.e., with modified covariates or
fixed weights, can be computed manually by adjusting the control list
(in a copy of the original fit), dropping the old terms
, and using
the internal function meanHHH
directly, see the Example.
Examples
## simulate simple seasonal noise with reduced baseline for t >= 60
t <- 0:100
y <- rpois(length(t), exp(3 + sin(2*pi*t/52) - 2*(t >= 60)))
obj <- sts(y)
plot(obj)
## fit true model
fit <- hhh4(obj, list(end = list(f = addSeason2formula(~lock)),
data = list(lock = as.integer(t >= 60)),
family = "Poisson"))
coef(fit, amplitudeShift = TRUE, se = TRUE)
## compute predictions for a subset of the time points
stopifnot(identical(predict(fit), fitted(fit)))
plot(obj)
lines(40:80, predict(fit, newSubset = 40:80), lwd = 2)
## advanced: compute predictions for "newdata" (here, a modified covariate)
mod <- fit
mod$terms <- NULL # to be sure
mod$control$data$lock[t >= 60] <- 0.5
pred <- meanHHH(mod$coefficients, terms(mod))$mean
plot(fit, xaxis = NA)
lines(mod$control$subset, pred, lty = 2)