surveillance (version 1.12.1)

estimateGLRNbHook: Hook function for in-control mean estimation

Description

Estimation routine for the in-control mean of algo.glrpois. In R< 2.14.0 and surveillance < 1.4 (i.e., without a package namespace) users could customize this function simply by defining a modified version in their workspace. This is no longer supported.

Usage

estimateGLRNbHook()

Arguments

Value

  • A list
  • modresulting model of a call of glm.nb
  • rangevector of length as range containing the predicted values

encoding

latin1

See Also

algo.glrnb

Examples

Run this code
estimateGLRNbHook <- function() {
  #Fetch control object from parent
  control <- parent.frame()$control
  #The period
  p <- parent.frame()$disProgObj$freq
  #Current range to perform surveillance on
  range <- parent.frame()$range

  #Define training & test data set (the rest)
  train <- 1:(range[1]-1)
  test <- range
  
  #Perform an estimation based on all observations before timePoint
  #Event better - don't do this at all in the algorithm - force
  #user to do it himself - coz its a model selection problem
  data <- data.frame(y=parent.frame()$disProgObj$observed[t],t=train)
  #Build the model equation
  formula <- "y ~ 1 "
  if (control$mu0Model$trend) { formula <- paste(formula," + t",sep="") }
  for (s in 1:control$mu0Model$S) {
    formula <- paste(formula,"+cos(2*",s,"*pi/p*t)+ sin(2*",s,"*pi/p*t)",sep="")
  }
  #Fit the GLM
  m <- eval(substitute(glm.nb(form,data=data),
                      list(form=as.formula(formula))))

  #Predict mu_{0,t}
  return(as.numeric(predict(m,newdata=data.frame(t=range),type="response")))
}

Run the code above in your browser using DataLab