epirt
defines a model for reproduction rates. For more
details on the model assumptions, please read the model description
vignette.
epirt( formula, link = "log", center = FALSE, prior = rstanarm::normal(scale = 0.5), prior_intercept = rstanarm::normal(scale = 0.5), prior_covariance = rstanarm::decov(scale = 0.5), ... )
formula | An object of class |
---|---|
link | The link function. This must be either |
center | If |
prior | Same as in |
prior_intercept | Same as in |
prior_covariance | Same as in |
... | Additional arguments for |
An object of class epirt
.
epirt
has a formula
argument which defines the linear predictor, an argument link
defining the link function,
and additional arguments to specify priors on parameters making up the linear predictor.
A general R formula gives a symbolic description of a model. It takes the form y ~ model
, where y
is the response
and model
is a collection of terms separated by the +
operator. model
fully defines a linear predictor used to predict y
.
In this case, the “response” being modeled are reproduction numbers which are unobserved.
epirt
therefore requires that the left hand side of the formula takes the form R(group, date)
,
where group
and date
refer to variables representing the region and date respectively.
The right hand side can consist of fixed effects, random effects, and autocorrelation terms.
# \donttest{ library(epidemia) library(ggplot2) data("EuropeCovid") options(mc.cores = parallel::detectCores()) data <- EuropeCovid$data data$week <- lubridate::week(data$date) # collect arguments for epim args <- list( inf = epiinf(gen = EuropeCovid$si), obs = epiobs(deaths ~ 1, i2o = EuropeCovid$inf2death, link = scaled_logit(0.02)), data = data, algorithm = "fullrank", # For speed - should generally use "sampling" iter = 2e4, group_subset = "France", seed = 12345, refresh = 0 ) # a simple random walk model for R args$rt <- epirt( formula = R(country, date) ~ rw(time = week), link = scaled_logit(7) ) fm1 <- do.call(epim, args)#> Warning: Pareto k diagnostic value is 0.79. Resampling is unreliable. Increasing the number of draws or decreasing tol_rel_obj may help.# Modeling effects of NPIs args$rt <- epirt( formula = R(country, date) ~ 1 + lockdown + public_events, link = scaled_logit(7) ) fm2 <- do.call(epim, args)#> Warning: Pareto k diagnostic value is 1.62. Resampling is disabled. Decreasing tol_rel_obj may help if variational algorithm has terminated prematurely. Otherwise consider using sampling instead.# shifted gamma prior for NPI effects args$rt <- epirt( formula = R(country, date) ~ 1 + lockdown + public_events, link = scaled_logit(7), prior = shifted_gamma(shape = 1/2, scale = 1, shift = log(1.05)/2) ) # How does the implied prior look? args$prior_PD <- TRUE fm3 <- do.call(epim, args)#> Warning: Pareto k diagnostic value is 0.71. Resampling is unreliable. Increasing the number of draws or decreasing tol_rel_obj may help.# }