| algo.hhh {surveillance} | R Documentation |
Fits a Poisson/negative binomial model with mean μ_it (as described in Held/Höhle/Hofmann, 2005) to a multivariate time series of counts.
algo.hhh(disProgObj, control=list(lambda=TRUE, neighbours=FALSE,
linear=FALSE, nseason = 0,
negbin=c("none", "single", "multiple"),
proportion=c("none", "single", "multiple")),
thetastart=NULL, verbose=TRUE)
disProgObj |
Object of class disProg |
control |
Control object:
|
thetastart |
vector with starting values for all parameters specified
in the control object (for optim). |
verbose |
if true information about convergence is printed |
Note that for the time being this function is not a surveillance algorithm, but only a modelling approach as described in the Held et. al (2005) paper.
Returns an object of class ah with elements
coefficients |
estimated parameters |
se |
estimated standard errors |
cov |
covariance matrix |
loglikelihood |
loglikelihood |
convergence |
logical indicating whether optim converged or not |
fitted.values |
fitted mean values μ_it |
control |
specified control object |
disProgObj |
specified disProg-object |
M. Paul, L. Held, M. Höhle
Held, L., Höhle, M., Hofmann, M. (2005) A statistical framework for the analysis of multivariate infectious disease surveillance counts. Statistical Modelling, 5, p. 187–199.
# univariate time series: salmonella agona cases
data(salmonella.agona)
salmonella <- create.disProg(week=1:length(salmonella.agona$observed),
observed=salmonella.agona$observed,
state=salmonella.agona$state)
model1 <- list(lambda=TRUE, linear=TRUE,
nseason=1, negbin="single")
algo.hhh(salmonella, control=model1)
# multivariate time series:
# measles cases in Lower Saxony, Germany
data(measles.weser)
# same model as above
algo.hhh(measles.weser, control=model1)
# different starting values for
# theta = (lambda, beta, gamma_1, gamma_2, psi)
startValues <- c(0.1, rep(0, 3), 1)
algo.hhh(measles.weser, control=model1,
thetastart=startValues)
# include autoregressive parameter phi for adjacent "Kreise"
model2 <- list(lambda=TRUE, neighbours=TRUE,
linear=FALSE, nseason=1,
negbin="single")
algo.hhh(measles.weser, control=model2)
## weekly counts of influenza and meningococcal infections in Germany, 2001-2006
data(influMen)
# specify model with two autoregressive parameters lambda_i, overdispersion
# parameters psi_i, an autoregressive parameter phi for meningococcal infections
# (i.e. nu_flu,t = lambda_flu * y_flu,t-1
# and nu_men,t = lambda_men * y_men,t-1 + phi_men*y_flu,t-1 )
# and S=(3,1) Fourier frequencies
model <- list(lambda=c(TRUE,TRUE), neighbours=c(FALSE,TRUE),
linear=FALSE,nseason=c(3,1),negbin="multiple")
# run algo.hhh
algo.hhh(influMen, control=model)