CRAN Package Check Results for Package surveillance

Last updated on 2019-12-09 05:47:30 CET.

Flavor Version Tinstall Tcheck Ttotal Status Flags
r-devel-linux-x86_64-debian-clang 1.17.2 72.86 444.57 517.43 ERROR
r-devel-linux-x86_64-debian-gcc 1.17.2 56.00 400.79 456.79 NOTE
r-devel-linux-x86_64-fedora-clang 1.17.2 568.70 NOTE
r-devel-linux-x86_64-fedora-gcc 1.17.2 728.46 OK
r-devel-windows-ix86+x86_64 1.17.2 121.00 665.00 786.00 NOTE --no-vignettes
r-devel-windows-ix86+x86_64-gcc8 1.17.2 114.00 314.00 428.00 ERROR --no-vignettes
r-patched-linux-x86_64 1.17.2 58.89 485.36 544.25 NOTE
r-patched-solaris-x86 1.17.2 842.00 NOTE
r-release-linux-x86_64 1.17.2 61.98 492.60 554.58 NOTE
r-release-windows-ix86+x86_64 1.17.2 149.00 561.00 710.00 NOTE --no-vignettes
r-release-osx-x86_64 1.17.2 NOTE
r-oldrel-windows-ix86+x86_64 1.17.2 94.00 613.00 707.00 NOTE --no-vignettes
r-oldrel-osx-x86_64 1.17.2 NOTE

Check Details

Version: 1.17.2
Check: package dependencies
Result: NOTE
    Package suggested but not available for checking: 'INLA'
Flavors: r-devel-linux-x86_64-debian-clang, r-devel-linux-x86_64-debian-gcc, r-patched-linux-x86_64, r-patched-solaris-x86, r-release-linux-x86_64, r-release-osx-x86_64, r-oldrel-osx-x86_64

Version: 1.17.2
Check: examples
Result: ERROR
    Running examples in 'surveillance-Ex.R' failed
    The error most likely occurred in:
    
    > base::assign(".ptime", proc.time(), pos = "CheckExEnv")
    > ### Name: algo.hhh
    > ### Title: Fit a Classical HHH Model (DEPRECATED)
    > ### Aliases: algo.hhh print.ah coef.ah
    > ### Keywords: ts regression
    >
    > ### ** Examples
    >
    >
    > # univariate time series: salmonella agona cases
    > data(salmonella.agona)
    >
    > model1 <- list(lambda=TRUE, linear=TRUE,
    + nseason=1, negbin="single")
    >
    > algo.hhh(salmonella.agona, control=model1)
     ----------- FAILURE REPORT --------------
     --- failure: the condition has length > 1 ---
     --- srcref ---
    :
     --- package (from environment) ---
    surveillance
     --- call from context ---
    algo.hhh(salmonella.agona, control = model1)
     --- call from argument ---
    if (class(cov) == "try-error") {
     if (verbose) {
     cat("Fisher info singular \t loglik=", loglik, " \n")
     cat("theta", round(thetahat, 2), "\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
    }
     --- R stacktrace ---
    where 1: algo.hhh(salmonella.agona, control = model1)
    
     --- value of length: 2 type: logical ---
    [1] FALSE FALSE
     --- function from context ---
    function (disProgObj, control = list(lambda = TRUE, neighbours = FALSE,
     linear = FALSE, nseason = 0, negbin = c("none", "single",
     "multiple"), proportion = c("none", "single", "multiple"),
     lag.range = NULL), thetastart = NULL, verbose = TRUE)
    {
     if (class(disProgObj) == "sts")
     disProgObj <- sts2disProg(disProgObj)
     if (is.null(control[["linear", exact = TRUE]]))
     control$linear <- FALSE
     if (is.null(control[["nseason", exact = TRUE]]))
     control$nseason <- 0
     if (is.null(control[["neighbours", exact = TRUE]]))
     control$neighbours <- NA
     if (is.null(control[["negbin", exact = TRUE]]))
     control$negbin <- "none"
     if (is.null(control[["lambda", exact = TRUE]]))
     control$lambda <- 1
     if (is.null(control[["proportion", exact = TRUE]]))
     control$proportion <- "none"
     control$negbin <- match.arg(control$negbin, c("single", "multiple",
     "none"))
     control$proportion <- match.arg(control$proportion, c("single",
     "multiple", "none"))
     if (is.logical(control[["lambda", exact = TRUE]])) {
     control$lambda <- as.numeric(control$lambda)
     control$lambda[control$lambda == 0] <- NA
     }
     if (is.logical(control[["neighbours", exact = TRUE]])) {
     control$neighbours <- as.numeric(control$neighbours)
     control$neighbours[control$neighbours == 0] <- NA
     }
     if (is.null(control[["lag.range", exact = TRUE]])) {
     lags <- c(control$lambda, control$neighbours)
     control$lag.range <- c(max(c(lags, 1), na.rm = TRUE),
     max(c(-lags, 0), na.rm = TRUE))
     }
     if (is.vector(disProgObj$observed))
     disProgObj$observed <- as.matrix(disProgObj$observed)
     n <- nrow(disProgObj$observed)
     nareas <- ncol(disProgObj$observed)
     if (nareas == 1) {
     control$neighbours <- NA
     control$proportion <- "none"
     control$nseason <- control$nseason[1]
     }
     if (control$proportion != "none") {
     control$neighbours <- NA
     if (sum(!is.na(control$lambda)) == 0 | sum(!is.na(control$lambda)) !=
     nareas)
     control$lambda <- 1
     }
     if (sum(!is.na(control$neighbours)) > 0 | control$proportion !=
     "none") {
     if (is.null(disProgObj$neighbourhood))
     stop("No neighbourhood matrix is provided\n")
     if (any(is.na(disProgObj$neighbourhood)))
     stop("No correct neighbourhood matrix given\n")
     }
     designRes <- make.design(disProgObj = disProgObj, control = control)
     if (designRes$dim$phi > 0) {
     nOfNeighbours <- designRes$nOfNeighbours
     if ((designRes$dim$phi == 1) & (sum(nOfNeighbours) ==
     0))
     stop("Specified model is not in line with neighbourhood matrix\n")
     if ((length(control$neighbours) == nareas) & (any(nOfNeighbours[!is.na(control$neighbours)] ==
     0)))
     stop("Specified model is not in line with neighbourhood matrix\n")
     }
     else if (designRes$dim$proportion > 0) {
     nOfNeighbours <- designRes$nOfNeighbours
     if ((designRes$dim$proportion == 1) & (sum(nOfNeighbours) ==
     0))
     stop("Specified model is not in line with neighbourhood matrix\n")
     if ((designRes$dim$proportion == nareas) & (any(nOfNeighbours ==
     0)))
     stop("Specified model is not in line with neighbourhood matrix\n")
     }
     dimtheta <- designRes$dimTheta$dim
     dimLambda <- designRes$dimTheta$lambda
     dimPhi <- designRes$dimTheta$phi
     areastart <- log(colMeans(designRes$Y)/designRes$populationFrac[1,
     ])
     if (!is.null(thetastart)) {
     if (all(length(thetastart) != c(dimtheta, dimtheta -
     nareas))) {
     cat("thetastart must be of length", dimtheta, "or ",
     dimtheta - nareas, "\n")
     return(NULL)
     }
     theta <- thetastart
     if (length(theta) == dimtheta)
     areastart <- NULL
     }
     else {
     theta <- c(rep(log(0.5), designRes$dimTheta$lambda),
     rep(log(0.1), designRes$dimTheta$phi), rep(0.5, designRes$dimTheta$proportion),
     rep(0, designRes$dimTheta$trend + designRes$dimTheta$season),
     rep(2, designRes$dimTheta$negbin))
     }
     if (!is.null(areastart)) {
     if (dimLambda + dimPhi > 0) {
     Lambda <- getLambda(theta[1:(dimLambda + dimPhi)],
     designRes)
     expAlpha <- expAlpha.mm(Lambda, designRes$Y)
     expAlpha[expAlpha <= 0] <- (colMeans(designRes$Y)/designRes$populationFrac[1,
     ])[expAlpha <= 0]
     areastart <- log(expAlpha)
     }
     theta <- c(areastart, theta)
     }
     mu <- meanResponse(theta, designRes)$mean
     if (any(mu == 0) | any(!is.finite(mu)))
     stop("invalid initial values\n")
     mycontrol <- list(fnscale = -1, type = 3, maxit = 1000)
     suppressWarnings(myoptim <- optim(theta, fn = loglikelihood,
     gr = gradient, control = mycontrol, method = "BFGS",
     hessian = TRUE, designRes = designRes))
     if (myoptim$convergence == 0) {
     convergence <- TRUE
     }
     else {
     if (verbose)
     cat("Algorithm has NOT converged. \n")
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     loglik <- myoptim$value
     if (loglik == 0) {
     if (verbose) {
     cat("loglikelihood = 0\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     thetahat <- myoptim$par
     fisher <- -myoptim$hessian
     fitted <- meanResponse(thetahat, designRes)$mean
     D <- jacobian(thetahat, designRes)$D
     thetahat <- jacobian(thetahat, designRes)$theta
     cov <- try(D %*% solve(fisher) %*% t(D), silent = TRUE)
     if (class(cov) == "try-error") {
     if (verbose) {
     cat("Fisher info singular \t loglik=", loglik, " \n")
     cat("theta", round(thetahat, 2), "\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     if (any(!is.finite(diag(cov))) | any(diag(cov) < 0)) {
     if (verbose) {
     cat("infinite or negative cov\t loglik=", loglik,
     "\n")
     cat("theta", round(thetahat, 2), "\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     se <- sqrt(diag(cov))
     if (convergence & verbose)
     cat("Algorithm claims to have converged \n")
     result <- list(coefficients = thetahat, se = se, cov = cov,
     call = match.call(), loglikelihood = loglik, convergence = convergence,
     fitted.values = fitted, control = control, disProgObj = disProgObj,
     lag = designRes$lag, nObs = designRes$nObs)
     class(result) <- "ah"
     return(result)
    }
    <bytecode: 0xc2e91c8>
    <environment: namespace:surveillance>
     --- function search by body ---
    Function algo.hhh in namespace surveillance has this body.
     ----------- END OF FAILURE REPORT --------------
    Error in if (class(cov) == "try-error") { : the condition has length > 1
    Calls: algo.hhh
    Execution halted
Flavor: r-devel-linux-x86_64-debian-clang

Version: 1.17.2
Check: tests
Result: ERROR
     Running 'testthat.R' [37s/40s]
    Running the tests in 'tests/testthat.R' failed.
    Complete output:
     > if (require("testthat")) {
     + test_check("surveillance")
     + }
     Loading required package: testthat
     Loading required package: surveillance
     Loading required package: sp
     Loading required package: xtable
     This is surveillance 1.17.2. For overview type 'help(surveillance)'.
     ----------- FAILURE REPORT --------------
     --- failure: the condition has length > 1 ---
     --- srcref ---
     :
     --- package (from environment) ---
     surveillance
     --- call from context ---
     algo.hhh(influMen, list(lambda = c(1, 1), neighbours = c(NA,
     0), linear = FALSE, nseason = c(3, 1), negbin = "multiple"),
     verbose = FALSE)
     --- call from argument ---
     if (class(cov) == "try-error") {
     if (verbose) {
     cat("Fisher info singular \t loglik=", loglik, " \n")
     cat("theta", round(thetahat, 2), "\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     --- R stacktrace ---
     where 1 at testthat/test-hhh4+algo.hhh.R#7: algo.hhh(influMen, list(lambda = c(1, 1), neighbours = c(NA,
     0), linear = FALSE, nseason = c(3, 1), negbin = "multiple"),
     verbose = FALSE)
     where 2: eval(code, test_env)
     where 3: eval(code, test_env)
     where 4: withCallingHandlers({
     eval(code, test_env)
     if (!handled && !is.null(test)) {
     skip_empty()
     }
     }, expectation = handle_expectation, skip = handle_skip, warning = handle_warning,
     message = handle_message, error = handle_error)
     where 5: doTryCatch(return(expr), name, parentenv, handler)
     where 6: tryCatchOne(expr, names, parentenv, handlers[[1L]])
     where 7: tryCatchList(expr, names[-nh], parentenv, handlers[-nh])
     where 8: doTryCatch(return(expr), name, parentenv, handler)
     where 9: tryCatchOne(tryCatchList(expr, names[-nh], parentenv, handlers[-nh]),
     names[nh], parentenv, handlers[[nh]])
     where 10: tryCatchList(expr, classes, parentenv, handlers)
     where 11: tryCatch(withCallingHandlers({
     eval(code, test_env)
     if (!handled && !is.null(test)) {
     skip_empty()
     }
     }, expectation = handle_expectation, skip = handle_skip, warning = handle_warning,
     message = handle_message, error = handle_error), error = handle_fatal,
     skip = function(e) {
     })
     where 12: test_code(NULL, exprs, env)
     where 13: source_file(path, new.env(parent = env), chdir = TRUE, wrap = wrap)
     where 14: force(code)
     where 15: doWithOneRestart(return(expr), restart)
     where 16: withOneRestart(expr, restarts[[1L]])
     where 17: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     where 18: with_reporter(reporter = reporter, start_end_reporter = start_end_reporter,
     {
     reporter$start_file(basename(path))
     lister$start_file(basename(path))
     source_file(path, new.env(parent = env), chdir = TRUE,
     wrap = wrap)
     reporter$.end_context()
     reporter$end_file()
     })
     where 19: FUN(X[[i]], ...)
     where 20: lapply(paths, test_file, env = env, reporter = current_reporter,
     start_end_reporter = FALSE, load_helpers = FALSE, wrap = wrap)
     where 21: force(code)
     where 22: doWithOneRestart(return(expr), restart)
     where 23: withOneRestart(expr, restarts[[1L]])
     where 24: withRestarts(testthat_abort_reporter = function() NULL, force(code))
     where 25: with_reporter(reporter = current_reporter, results <- lapply(paths,
     test_file, env = env, reporter = current_reporter, start_end_reporter = FALSE,
     load_helpers = FALSE, wrap = wrap))
     where 26: test_files(paths, reporter = reporter, env = env, stop_on_failure = stop_on_failure,
     stop_on_warning = stop_on_warning, wrap = wrap)
     where 27: test_dir(path = test_path, reporter = reporter, env = env, filter = filter,
     ..., stop_on_failure = stop_on_failure, stop_on_warning = stop_on_warning,
     wrap = wrap)
     where 28: test_package_dir(package = package, test_path = test_path, filter = filter,
     reporter = reporter, ..., stop_on_failure = stop_on_failure,
     stop_on_warning = stop_on_warning, wrap = wrap)
     where 29: test_check("surveillance")
    
     --- value of length: 2 type: logical ---
     [1] FALSE FALSE
     --- function from context ---
     function (disProgObj, control = list(lambda = TRUE, neighbours = FALSE,
     linear = FALSE, nseason = 0, negbin = c("none", "single",
     "multiple"), proportion = c("none", "single", "multiple"),
     lag.range = NULL), thetastart = NULL, verbose = TRUE)
     {
     if (class(disProgObj) == "sts")
     disProgObj <- sts2disProg(disProgObj)
     if (is.null(control[["linear", exact = TRUE]]))
     control$linear <- FALSE
     if (is.null(control[["nseason", exact = TRUE]]))
     control$nseason <- 0
     if (is.null(control[["neighbours", exact = TRUE]]))
     control$neighbours <- NA
     if (is.null(control[["negbin", exact = TRUE]]))
     control$negbin <- "none"
     if (is.null(control[["lambda", exact = TRUE]]))
     control$lambda <- 1
     if (is.null(control[["proportion", exact = TRUE]]))
     control$proportion <- "none"
     control$negbin <- match.arg(control$negbin, c("single", "multiple",
     "none"))
     control$proportion <- match.arg(control$proportion, c("single",
     "multiple", "none"))
     if (is.logical(control[["lambda", exact = TRUE]])) {
     control$lambda <- as.numeric(control$lambda)
     control$lambda[control$lambda == 0] <- NA
     }
     if (is.logical(control[["neighbours", exact = TRUE]])) {
     control$neighbours <- as.numeric(control$neighbours)
     control$neighbours[control$neighbours == 0] <- NA
     }
     if (is.null(control[["lag.range", exact = TRUE]])) {
     lags <- c(control$lambda, control$neighbours)
     control$lag.range <- c(max(c(lags, 1), na.rm = TRUE),
     max(c(-lags, 0), na.rm = TRUE))
     }
     if (is.vector(disProgObj$observed))
     disProgObj$observed <- as.matrix(disProgObj$observed)
     n <- nrow(disProgObj$observed)
     nareas <- ncol(disProgObj$observed)
     if (nareas == 1) {
     control$neighbours <- NA
     control$proportion <- "none"
     control$nseason <- control$nseason[1]
     }
     if (control$proportion != "none") {
     control$neighbours <- NA
     if (sum(!is.na(control$lambda)) == 0 | sum(!is.na(control$lambda)) !=
     nareas)
     control$lambda <- 1
     }
     if (sum(!is.na(control$neighbours)) > 0 | control$proportion !=
     "none") {
     if (is.null(disProgObj$neighbourhood))
     stop("No neighbourhood matrix is provided\n")
     if (any(is.na(disProgObj$neighbourhood)))
     stop("No correct neighbourhood matrix given\n")
     }
     designRes <- make.design(disProgObj = disProgObj, control = control)
     if (designRes$dim$phi > 0) {
     nOfNeighbours <- designRes$nOfNeighbours
     if ((designRes$dim$phi == 1) & (sum(nOfNeighbours) ==
     0))
     stop("Specified model is not in line with neighbourhood matrix\n")
     if ((length(control$neighbours) == nareas) & (any(nOfNeighbours[!is.na(control$neighbours)] ==
     0)))
     stop("Specified model is not in line with neighbourhood matrix\n")
     }
     else if (designRes$dim$proportion > 0) {
     nOfNeighbours <- designRes$nOfNeighbours
     if ((designRes$dim$proportion == 1) & (sum(nOfNeighbours) ==
     0))
     stop("Specified model is not in line with neighbourhood matrix\n")
     if ((designRes$dim$proportion == nareas) & (any(nOfNeighbours ==
     0)))
     stop("Specified model is not in line with neighbourhood matrix\n")
     }
     dimtheta <- designRes$dimTheta$dim
     dimLambda <- designRes$dimTheta$lambda
     dimPhi <- designRes$dimTheta$phi
     areastart <- log(colMeans(designRes$Y)/designRes$populationFrac[1,
     ])
     if (!is.null(thetastart)) {
     if (all(length(thetastart) != c(dimtheta, dimtheta -
     nareas))) {
     cat("thetastart must be of length", dimtheta, "or ",
     dimtheta - nareas, "\n")
     return(NULL)
     }
     theta <- thetastart
     if (length(theta) == dimtheta)
     areastart <- NULL
     }
     else {
     theta <- c(rep(log(0.5), designRes$dimTheta$lambda),
     rep(log(0.1), designRes$dimTheta$phi), rep(0.5, designRes$dimTheta$proportion),
     rep(0, designRes$dimTheta$trend + designRes$dimTheta$season),
     rep(2, designRes$dimTheta$negbin))
     }
     if (!is.null(areastart)) {
     if (dimLambda + dimPhi > 0) {
     Lambda <- getLambda(theta[1:(dimLambda + dimPhi)],
     designRes)
     expAlpha <- expAlpha.mm(Lambda, designRes$Y)
     expAlpha[expAlpha <= 0] <- (colMeans(designRes$Y)/designRes$populationFrac[1,
     ])[expAlpha <= 0]
     areastart <- log(expAlpha)
     }
     theta <- c(areastart, theta)
     }
     mu <- meanResponse(theta, designRes)$mean
     if (any(mu == 0) | any(!is.finite(mu)))
     stop("invalid initial values\n")
     mycontrol <- list(fnscale = -1, type = 3, maxit = 1000)
     suppressWarnings(myoptim <- optim(theta, fn = loglikelihood,
     gr = gradient, control = mycontrol, method = "BFGS",
     hessian = TRUE, designRes = designRes))
     if (myoptim$convergence == 0) {
     convergence <- TRUE
     }
     else {
     if (verbose)
     cat("Algorithm has NOT converged. \n")
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     loglik <- myoptim$value
     if (loglik == 0) {
     if (verbose) {
     cat("loglikelihood = 0\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     thetahat <- myoptim$par
     fisher <- -myoptim$hessian
     fitted <- meanResponse(thetahat, designRes)$mean
     D <- jacobian(thetahat, designRes)$D
     thetahat <- jacobian(thetahat, designRes)$theta
     cov <- try(D %*% solve(fisher) %*% t(D), silent = TRUE)
     if (class(cov) == "try-error") {
     if (verbose) {
     cat("Fisher info singular \t loglik=", loglik, " \n")
     cat("theta", round(thetahat, 2), "\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     if (any(!is.finite(diag(cov))) | any(diag(cov) < 0)) {
     if (verbose) {
     cat("infinite or negative cov\t loglik=", loglik,
     "\n")
     cat("theta", round(thetahat, 2), "\n")
     cat("Results are not reliable! Try different starting values. \n")
     }
     res <- list(convergence = FALSE)
     class(res) <- "ah"
     return(res)
     }
     se <- sqrt(diag(cov))
     if (convergence & verbose)
     cat("Algorithm claims to have converged \n")
     result <- list(coefficients = thetahat, se = se, cov = cov,
     call = match.call(), loglikelihood = loglik, convergence = convergence,
     fitted.values = fitted, control = control, disProgObj = disProgObj,
     lag = designRes$lag, nObs = designRes$nObs)
     class(result) <- "ah"
     return(result)
     }
     <bytecode: 0x8ddb2f8>
     <environment: namespace:surveillance>
     --- function search by body ---
     Function algo.hhh in namespace surveillance has this body.
     ----------- END OF FAILURE REPORT --------------
     -- 1. Error: (unknown) (@test-hhh4+algo.hhh.R#7) ------------------------------
     the condition has length > 1
     Backtrace:
     1. surveillance::algo.hhh(...)
    
    
     Penalized log-likelihood:
     Checking analytical score vector using numDeriv::grad() ...
     [1] TRUE
     Checking analytical Fisher information matrix using numDeriv::hessian() ...
     [1] "Mean relative difference: 3.881263e-07"
    
     Penalized log-likelihood:
     Checking analytical score vector using numDeriv::grad() ...
     [1] TRUE
     Checking analytical Fisher information matrix using numDeriv::hessian() ...
     [1] "Mean relative difference: 1.551014e-07"
    
     Penalized log-likelihood:
     Checking analytical score vector using numDeriv::grad() ...
     [1] TRUE
     Checking analytical Fisher information matrix using numDeriv::hessian() ...
     [1] "Mean relative difference: 3.859334e-07"
    
     Penalized log-likelihood:
     Checking analytical score vector using numDeriv::grad() ...
     [1] TRUE
     Checking analytical Fisher information matrix using numDeriv::hessian() ...
     [1] "Mean relative difference: 3.165475e-07"
    
     Penalized log-likelihood:
     Checking analytical score vector using numDeriv::grad() ...
     [1] TRUE
     Checking analytical Fisher information matrix using numDeriv::hessian() ...
     [1] "Mean relative difference: 1.877109e-07"
    
     Penalized log-likelihood:
     Checking analytical score vector using numDeriv::grad() ...
     [1] TRUE
     Checking analytical Fisher information matrix using numDeriv::hessian() ...
     [1] "Mean relative difference: 5.890145e-07"
    
     Penalized log-likelihood:
     Checking analytical score vector using numDeriv::grad() ...
     [1] TRUE
     Checking analytical Fisher information matrix using numDeriv::hessian() ...
     [1] "Mean relative difference: 1.363046e-07"
     'F' vs. cubature using method = "midpoint" ... TRUE
     'Fcircle' vs. cubature using method = "midpoint" ... TRUE
     'deriv' vs. numerical derivative ... TRUE
     'Deriv' vs. cubature using method = "midpoint" ... TRUE
     'F' vs. cubature using method = "SV" ... TRUE
     'Fcircle' vs. cubature using method = "SV" ... TRUE
     'deriv' vs. numerical derivative ... TRUE
     'Deriv' vs. cubature using method = "SV" ... TRUE
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     'F' vs. cubature using method = "SV" ... TRUE
     'Fcircle' vs. cubature using method = "SV" ... TRUE
     'deriv' vs. numerical derivative ... TRUE
     'Deriv' vs. cubature using method = "SV" ...
     siaf parameter 1: TRUE
     siaf parameter 2: TRUE
     'F' vs. cubature using method = "SV" ... TRUE
     'Fcircle' vs. cubature using method = "SV" ... TRUE
     'deriv' vs. numerical derivative ... TRUE
     'Deriv' vs. cubature using method = "SV" ... TRUE
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     'F' vs. cubature using method = "midpoint" ... TRUE
     'Fcircle' vs. cubature using method = "midpoint" ... TRUE
     'deriv' vs. numerical derivative ... TRUE
     'Deriv' vs. cubature using method = "midpoint" ...
     siaf parameter 1: TRUE
     siaf parameter 2: TRUE
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     Checking 'intrfr' against a numeric approximation ... OK
     'F' vs. cubature using method = "SV" ... TRUE
     'deriv' vs. numerical derivative ... TRUE
     'Deriv' vs. cubature using method = "SV" ...
     siaf parameter 1: TRUE
     siaf parameter 2: TRUE
     'F' vs. cubature using method = "midpoint" ... TRUE
     'Fcircle' vs. cubature using method = "midpoint" ... TRUE
     'deriv' vs. numerical derivative ... TRUE
     'Deriv' vs. cubature using method = "midpoint" ...
     siaf parameter 1: TRUE
     siaf parameter 2: TRUE
     siaf parameter 3: TRUE
     == testthat results ===========================================================
     [ OK: 281 | SKIPPED: 0 | WARNINGS: 0 | FAILED: 1 ]
     1. Error: (unknown) (@test-hhh4+algo.hhh.R#7)
    
     Error: testthat unit tests failed
     Execution halted
Flavor: r-devel-linux-x86_64-debian-clang

Version: 1.17.2
Check: installed package size
Result: NOTE
     installed size is 8.3Mb
     sub-directories of 1Mb or more:
     R 1.8Mb
     doc 2.3Mb
     libs 1.7Mb
Flavors: r-devel-linux-x86_64-fedora-clang, r-patched-solaris-x86, r-release-osx-x86_64, r-oldrel-osx-x86_64

Version: 1.17.2
Flags: --no-vignettes
Check: installed package size
Result: NOTE
     installed size is 8.2Mb
     sub-directories of 1Mb or more:
     R 1.8Mb
     doc 2.3Mb
     help 1.0Mb
     libs 1.7Mb
Flavors: r-devel-windows-ix86+x86_64, r-devel-windows-ix86+x86_64-gcc8, r-release-windows-ix86+x86_64, r-oldrel-windows-ix86+x86_64

Version: 1.17.2
Flags: --no-vignettes
Check: running examples for arch ‘i386’
Result: ERROR
    Running examples in 'surveillance-Ex.R' failed
    The error most likely occurred in:
    
    > ### Name: epidataCS
    > ### Title: Continuous Space-Time Marked Point Patterns with Grid-Based
    > ### Covariates
    > ### Aliases: epidataCS as.epidataCS print.epidataCS nobs.epidataCS
    > ### head.epidataCS tail.epidataCS [.epidataCS subset.epidataCS
    > ### marks.epidataCS summary.epidataCS print.summary.epidataCS
    > ### as.stepfun.epidataCS getSourceDists
    > ### coerce,epidataCS,SpatialPointsDataFrame-method
    > ### Keywords: spatial classes manip
    >
    > ### ** Examples
    >
    > ## load "imdepi" example data (which is an object of class "epidataCS")
    > data("imdepi")
    >
    > ## print and summary
    > print(imdepi, n=5, digits=2)
    Observation period: 0 - 2557
    Observation window (bounding box): [4031, 4672] x [2684, 3550]
    Spatio-temporal grid (not shown): 84 time blocks x 413 tiles
    Types of events: "B" "C"
    Overall number of events: 636
    
     coordinates time tile type eps.t eps.s sex agegrp BLOCK start
    1 (4100, 3200) 0.21 05554 B 30 200 male [3,19) 1 0
    2 (4100, 3100) 0.71 05382 C 30 200 male [3,19) 1 0
    3 (4400, 2900) 5.59 09574 B 30 200 female [19,Inf) 1 0
    4 (4200, 2900) 7.12 08212 B 30 200 female [3,19) 1 0
    5 (4100, 3200) 22.06 05554 C 30 200 male [3,19) 1 0
     popdensity
    1 261
    2 519
    3 209
    4 1666
    5 261
    [....]
    > print(s <- summary(imdepi))
    Observation period: 0 - 2557
    Observation window (bounding box): [4031.295, 4672.253] x [2684.102, 3549.931]
    Spatio-temporal grid (not shown): 84 time blocks x 413 tiles
    Overall number of events: 636 (2 types)
    
    Summary of event marks and number of potential sources:
     time tile type eps.t eps.s
     Min. : 0.2117 05354 : 34 B:336 Min. :30 Min. :200
     1st Qu.: 539.4753 05370 : 27 C:300 1st Qu.:30 1st Qu.:200
     Median :1154.9527 11000 : 27 Median :30 Median :200
     Mean :1192.6813 05358 : 13 Mean :30 Mean :200
     3rd Qu.:1808.0295 05162 : 12 3rd Qu.:30 3rd Qu.:200
     Max. :2542.7800 05382 : 12 Max. :30 Max. :200
     (Other):511
     sex agegrp x y |.sources|
     female:292 [0,3) :194 Min. :4039 Min. :2710 Min. : 0.000
     male :339 [3,19) :279 1st Qu.:4101 1st Qu.:2967 1st Qu.: 0.000
     NA's : 5 [19,Inf):162 Median :4206 Median :3106 Median : 1.000
     NA's : 1 Mean :4244 Mean :3092 Mean : 1.634
     3rd Qu.:4361 3rd Qu.:3194 3rd Qu.: 2.000
     Max. :4665 Max. :3525 Max. :14.000
    
    > plot(s$counter, # same as 'as.stepfun(imdepi)'
    + xlab = "Time [days]", ylab="Number of infectious individuals",
    + main=paste("Time course of the number of infectious individuals",
    + "assuming an infectious period of 30 days", sep="\n"))
    > plot(table(s$nSources), xlab="Number of \"close\" infective individuals",
    + ylab="Number of events",
    + main=paste("Distribution of the number of potential sources",
    + "assuming an interaction range of 200 km and 30 days",
    + sep="\n"))
    > ## the summary object contains further information
    > str(s)
    List of 14
     $ timeRange : num [1:2] 0 2557
     $ bbox : num [1:2, 1:2] 4031 2684 4672 3550
     ..- attr(*, "dimnames")=List of 2
     .. ..$ : chr [1:2] "x" "y"
     .. ..$ : chr [1:2] "min" "max"
     $ nBlocks : int 84
     $ nEvents : int 636
     $ nTypes : int 2
     $ eventTimes : num [1:636] 0.212 0.712 5.591 7.117 22.06 ...
     $ eventCoords: num [1:636, 1:2] 4112 4123 4412 4203 4128 ...
     ..- attr(*, "dimnames")=List of 2
     .. ..$ : chr [1:636] "1" "2" "3" "4" ...
     .. ..$ : chr [1:2] "x" "y"
     $ eventTypes : Factor w/ 2 levels "B","C": 1 2 1 1 2 2 2 2 2 2 ...
     $ eventRanges:'data.frame': 636 obs. of 2 variables:
     ..$ eps.t: num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     ..$ eps.s: num [1:636] 200 200 200 200 200 200 200 200 200 200 ...
     $ eventMarks :'data.frame': 636 obs. of 9 variables:
     ..$ time : num [1:636] 0.212 0.712 5.591 7.117 22.06 ...
     ..$ tile : Factor w/ 413 levels "01001","01002",..: 95 91 291 195 95 79 94 327 289 5 ...
     ..$ type : Factor w/ 2 levels "B","C": 1 2 1 1 2 2 2 2 2 2 ...
     ..$ eps.t : num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     ..$ eps.s : num [1:636] 200 200 200 200 200 200 200 200 200 200 ...
     ..$ sex : Factor w/ 2 levels "female","male": 2 2 1 1 2 2 2 1 2 NA ...
     ..$ agegrp: Factor w/ 3 levels "[0,3)","[3,19)",..: 2 2 3 2 2 2 2 2 3 1 ...
     ..$ x : num [1:636] 4112 4123 4412 4203 4128 ...
     ..$ y : num [1:636] 3203 3077 2916 2880 3223 ...
     $ tileTable : Named int [1:413] 2 2 2 2 2 1 0 0 1 0 ...
     ..- attr(*, "names")= chr [1:413] "01001" "01002" "01003" "01004" ...
     $ typeTable : Named int [1:2] 336 300
     ..- attr(*, "names")= chr [1:2] "B" "C"
     $ counter :function (v)
     ..- attr(*, "class")= chr [1:2] "stepfun" "function"
     ..- attr(*, "call")= language stepfun(tps, c(0, nInfectious), right = TRUE)
     $ nSources : int [1:636] 0 0 0 0 1 2 2 0 0 0 ...
     - attr(*, "class")= chr "summary.epidataCS"
    >
    > ## a histogram of the spatial distances to potential source events
    > ## (i.e., to events of the previous eps.t=30 days within eps.s=200 km)
    > sourceDists_space <- getSourceDists(imdepi, "space")
    > hist(sourceDists_space); rug(sourceDists_space)
    >
    > ## internal structure of an "epidataCS"-object
    > str(imdepi, max.level=4)
    List of 4
     $ events :Formal class 'SpatialPointsDataFrame' [package "sp"] with 5 slots
     .. ..@ data :'data.frame': 636 obs. of 14 variables:
     .. .. ..$ time : num [1:636] 0.212 0.712 5.591 7.117 22.06 ...
     .. .. ..$ tile : Factor w/ 413 levels "01001","01002",..: 95 91 291 195 95 79 94 327 289 5 ...
     .. .. ..$ type : Factor w/ 2 levels "B","C": 1 2 1 1 2 2 2 2 2 2 ...
     .. .. ..$ eps.t : num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     .. .. ..$ eps.s : num [1:636] 200 200 200 200 200 200 200 200 200 200 ...
     .. .. ..$ sex : Factor w/ 2 levels "female","male": 2 2 1 1 2 2 2 1 2 NA ...
     .. .. ..$ agegrp : Factor w/ 3 levels "[0,3)","[3,19)",..: 2 2 3 2 2 2 2 2 3 1 ...
     .. .. ..$ BLOCK : int [1:636] 1 1 1 1 1 1 2 2 2 2 ...
     .. .. ..$ start : num [1:636] 0 0 0 0 0 0 31 31 31 31 ...
     .. .. ..$ popdensity : num [1:636] 261 519 209 1666 261 ...
     .. .. ..$ .obsInfLength : num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     .. .. ..$ .sources :List of 636
     .. .. ..$ .bdist : num [1:636] 13.2 66.6 94.4 12.4 19.2 ...
     .. .. ..$ .influenceRegion:List of 636
     .. .. .. ..- attr(*, "nCircle2Poly")= int 16
     .. .. .. ..- attr(*, "clipper")= chr "polyclip"
     .. ..@ coords.nrs : num(0)
     .. ..@ coords : num [1:636, 1:2] 4112 4123 4412 4203 4128 ...
     .. .. ..- attr(*, "dimnames")=List of 2
     .. ..@ bbox : num [1:2, 1:2] 4039 2710 4665 3525
     .. .. ..- attr(*, "dimnames")=List of 2
     .. ..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
     $ stgrid :'data.frame': 34692 obs. of 6 variables:
     ..$ BLOCK : int [1:34692] 1 1 1 1 1 1 1 1 1 1 ...
     ..$ start : num [1:34692] 0 0 0 0 0 0 0 0 0 0 ...
     ..$ stop : num [1:34692] 31 31 31 31 31 31 31 31 31 31 ...
     ..$ tile : Factor w/ 413 levels "01001","01002",..: 1 2 3 4 5 6 7 8 9 10 ...
     ..$ area : num [1:34692] 56.4 118.7 214.2 71.6 1428 ...
     ..$ popdensity: num [1:34692] 1557.1 1996.6 987.6 1083.3 95.6 ...
     $ W :Formal class 'SpatialPolygons' [package "sp"] with 4 slots
     .. ..@ polygons :List of 1
     .. .. ..$ :Formal class 'Polygons' [package "sp"] with 5 slots
     .. ..@ plotOrder : int 1
     .. ..@ bbox : num [1:2, 1:2] 4031 2684 4672 3550
     .. .. ..- attr(*, "dimnames")=List of 2
     .. ..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
     $ qmatrix: logi [1:2, 1:2] TRUE FALSE FALSE TRUE
     ..- attr(*, "dimnames")=List of 2
     .. ..$ : chr [1:2] "B" "C"
     .. ..$ : chr [1:2] "B" "C"
     - attr(*, "class")= chr "epidataCS"
    > ## see help("imdepi") for more info on the data set
    >
    > ## extraction methods subset the 'events' component
    > ## (thereby taking care of the validity of the epidataCS object,
    > ## for instance the hidden auxiliary column .sources)
    > imdepi[101:200,]
    Observation period: 0 - 2557
    Observation window (bounding box): [4031.295, 4672.253] x [2684.102, 3549.931]
    Spatio-temporal grid (not shown): 84 time blocks x 413 tiles
    Types of events: "B" "C"
    Overall number of events: 100
    
     coordinates time tile type eps.t eps.s sex agegrp BLOCK
    101 (4052.863, 3096.593) 353.4000 05354 B 30 200 female [19,Inf) 12
    102 (4556.355, 3262.682) 357.6672 11000 B 30 200 male [3,19) 12
    103 (4141.513, 3157.541) 358.5114 05913 C 30 200 female [3,19) 12
    104 (4417.974, 2759.005) 360.0455 09188 C 30 200 female [0,3) 12
    105 (4442.943, 2793.727) 363.5171 09184 C 30 200 male [0,3) 12
    106 (4072.581, 3119.168) 364.1096 05116 C 30 200 male [0,3) 12
     start popdensity
    101 334 567.2927
    102 334 3834.0946
    103 334 2093.0388
    104 334 265.3942
    105 334 472.7581
    106 334 1525.4796
    [....]
    > tail(imdepi, n=4) # reduce the epidemic to the last 4 events
    Error in .tailindices(x, n) : could not find function ".tailindices"
    Calls: tail -> tail.epidataCS -> my.tail.matrix
    Execution halted
Flavor: r-devel-windows-ix86+x86_64-gcc8

Version: 1.17.2
Flags: --no-vignettes
Check: running examples for arch ‘x64’
Result: ERROR
    Running examples in 'surveillance-Ex.R' failed
    The error most likely occurred in:
    
    > ### Name: epidataCS
    > ### Title: Continuous Space-Time Marked Point Patterns with Grid-Based
    > ### Covariates
    > ### Aliases: epidataCS as.epidataCS print.epidataCS nobs.epidataCS
    > ### head.epidataCS tail.epidataCS [.epidataCS subset.epidataCS
    > ### marks.epidataCS summary.epidataCS print.summary.epidataCS
    > ### as.stepfun.epidataCS getSourceDists
    > ### coerce,epidataCS,SpatialPointsDataFrame-method
    > ### Keywords: spatial classes manip
    >
    > ### ** Examples
    >
    > ## load "imdepi" example data (which is an object of class "epidataCS")
    > data("imdepi")
    >
    > ## print and summary
    > print(imdepi, n=5, digits=2)
    Observation period: 0 - 2557
    Observation window (bounding box): [4031, 4672] x [2684, 3550]
    Spatio-temporal grid (not shown): 84 time blocks x 413 tiles
    Types of events: "B" "C"
    Overall number of events: 636
    
     coordinates time tile type eps.t eps.s sex agegrp BLOCK start
    1 (4100, 3200) 0.21 05554 B 30 200 male [3,19) 1 0
    2 (4100, 3100) 0.71 05382 C 30 200 male [3,19) 1 0
    3 (4400, 2900) 5.59 09574 B 30 200 female [19,Inf) 1 0
    4 (4200, 2900) 7.12 08212 B 30 200 female [3,19) 1 0
    5 (4100, 3200) 22.06 05554 C 30 200 male [3,19) 1 0
     popdensity
    1 261
    2 519
    3 209
    4 1666
    5 261
    [....]
    > print(s <- summary(imdepi))
    Observation period: 0 - 2557
    Observation window (bounding box): [4031.295, 4672.253] x [2684.102, 3549.931]
    Spatio-temporal grid (not shown): 84 time blocks x 413 tiles
    Overall number of events: 636 (2 types)
    
    Summary of event marks and number of potential sources:
     time tile type eps.t eps.s
     Min. : 0.2117 05354 : 34 B:336 Min. :30 Min. :200
     1st Qu.: 539.4753 05370 : 27 C:300 1st Qu.:30 1st Qu.:200
     Median :1154.9527 11000 : 27 Median :30 Median :200
     Mean :1192.6813 05358 : 13 Mean :30 Mean :200
     3rd Qu.:1808.0295 05162 : 12 3rd Qu.:30 3rd Qu.:200
     Max. :2542.7800 05382 : 12 Max. :30 Max. :200
     (Other):511
     sex agegrp x y |.sources|
     female:292 [0,3) :194 Min. :4039 Min. :2710 Min. : 0.000
     male :339 [3,19) :279 1st Qu.:4101 1st Qu.:2967 1st Qu.: 0.000
     NA's : 5 [19,Inf):162 Median :4206 Median :3106 Median : 1.000
     NA's : 1 Mean :4244 Mean :3092 Mean : 1.634
     3rd Qu.:4361 3rd Qu.:3194 3rd Qu.: 2.000
     Max. :4665 Max. :3525 Max. :14.000
    
    > plot(s$counter, # same as 'as.stepfun(imdepi)'
    + xlab = "Time [days]", ylab="Number of infectious individuals",
    + main=paste("Time course of the number of infectious individuals",
    + "assuming an infectious period of 30 days", sep="\n"))
    > plot(table(s$nSources), xlab="Number of \"close\" infective individuals",
    + ylab="Number of events",
    + main=paste("Distribution of the number of potential sources",
    + "assuming an interaction range of 200 km and 30 days",
    + sep="\n"))
    > ## the summary object contains further information
    > str(s)
    List of 14
     $ timeRange : num [1:2] 0 2557
     $ bbox : num [1:2, 1:2] 4031 2684 4672 3550
     ..- attr(*, "dimnames")=List of 2
     .. ..$ : chr [1:2] "x" "y"
     .. ..$ : chr [1:2] "min" "max"
     $ nBlocks : int 84
     $ nEvents : int 636
     $ nTypes : int 2
     $ eventTimes : num [1:636] 0.212 0.712 5.591 7.117 22.06 ...
     $ eventCoords: num [1:636, 1:2] 4112 4123 4412 4203 4128 ...
     ..- attr(*, "dimnames")=List of 2
     .. ..$ : chr [1:636] "1" "2" "3" "4" ...
     .. ..$ : chr [1:2] "x" "y"
     $ eventTypes : Factor w/ 2 levels "B","C": 1 2 1 1 2 2 2 2 2 2 ...
     $ eventRanges:'data.frame': 636 obs. of 2 variables:
     ..$ eps.t: num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     ..$ eps.s: num [1:636] 200 200 200 200 200 200 200 200 200 200 ...
     $ eventMarks :'data.frame': 636 obs. of 9 variables:
     ..$ time : num [1:636] 0.212 0.712 5.591 7.117 22.06 ...
     ..$ tile : Factor w/ 413 levels "01001","01002",..: 95 91 291 195 95 79 94 327 289 5 ...
     ..$ type : Factor w/ 2 levels "B","C": 1 2 1 1 2 2 2 2 2 2 ...
     ..$ eps.t : num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     ..$ eps.s : num [1:636] 200 200 200 200 200 200 200 200 200 200 ...
     ..$ sex : Factor w/ 2 levels "female","male": 2 2 1 1 2 2 2 1 2 NA ...
     ..$ agegrp: Factor w/ 3 levels "[0,3)","[3,19)",..: 2 2 3 2 2 2 2 2 3 1 ...
     ..$ x : num [1:636] 4112 4123 4412 4203 4128 ...
     ..$ y : num [1:636] 3203 3077 2916 2880 3223 ...
     $ tileTable : Named int [1:413] 2 2 2 2 2 1 0 0 1 0 ...
     ..- attr(*, "names")= chr [1:413] "01001" "01002" "01003" "01004" ...
     $ typeTable : Named int [1:2] 336 300
     ..- attr(*, "names")= chr [1:2] "B" "C"
     $ counter :function (v)
     ..- attr(*, "class")= chr [1:2] "stepfun" "function"
     ..- attr(*, "call")= language stepfun(tps, c(0, nInfectious), right = TRUE)
     $ nSources : int [1:636] 0 0 0 0 1 2 2 0 0 0 ...
     - attr(*, "class")= chr "summary.epidataCS"
    >
    > ## a histogram of the spatial distances to potential source events
    > ## (i.e., to events of the previous eps.t=30 days within eps.s=200 km)
    > sourceDists_space <- getSourceDists(imdepi, "space")
    > hist(sourceDists_space); rug(sourceDists_space)
    >
    > ## internal structure of an "epidataCS"-object
    > str(imdepi, max.level=4)
    List of 4
     $ events :Formal class 'SpatialPointsDataFrame' [package "sp"] with 5 slots
     .. ..@ data :'data.frame': 636 obs. of 14 variables:
     .. .. ..$ time : num [1:636] 0.212 0.712 5.591 7.117 22.06 ...
     .. .. ..$ tile : Factor w/ 413 levels "01001","01002",..: 95 91 291 195 95 79 94 327 289 5 ...
     .. .. ..$ type : Factor w/ 2 levels "B","C": 1 2 1 1 2 2 2 2 2 2 ...
     .. .. ..$ eps.t : num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     .. .. ..$ eps.s : num [1:636] 200 200 200 200 200 200 200 200 200 200 ...
     .. .. ..$ sex : Factor w/ 2 levels "female","male": 2 2 1 1 2 2 2 1 2 NA ...
     .. .. ..$ agegrp : Factor w/ 3 levels "[0,3)","[3,19)",..: 2 2 3 2 2 2 2 2 3 1 ...
     .. .. ..$ BLOCK : int [1:636] 1 1 1 1 1 1 2 2 2 2 ...
     .. .. ..$ start : num [1:636] 0 0 0 0 0 0 31 31 31 31 ...
     .. .. ..$ popdensity : num [1:636] 261 519 209 1666 261 ...
     .. .. ..$ .obsInfLength : num [1:636] 30 30 30 30 30 30 30 30 30 30 ...
     .. .. ..$ .sources :List of 636
     .. .. ..$ .bdist : num [1:636] 13.2 66.6 94.4 12.4 19.2 ...
     .. .. ..$ .influenceRegion:List of 636
     .. .. .. ..- attr(*, "nCircle2Poly")= int 16
     .. .. .. ..- attr(*, "clipper")= chr "polyclip"
     .. ..@ coords.nrs : num(0)
     .. ..@ coords : num [1:636, 1:2] 4112 4123 4412 4203 4128 ...
     .. .. ..- attr(*, "dimnames")=List of 2
     .. ..@ bbox : num [1:2, 1:2] 4039 2710 4665 3525
     .. .. ..- attr(*, "dimnames")=List of 2
     .. ..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
     $ stgrid :'data.frame': 34692 obs. of 6 variables:
     ..$ BLOCK : int [1:34692] 1 1 1 1 1 1 1 1 1 1 ...
     ..$ start : num [1:34692] 0 0 0 0 0 0 0 0 0 0 ...
     ..$ stop : num [1:34692] 31 31 31 31 31 31 31 31 31 31 ...
     ..$ tile : Factor w/ 413 levels "01001","01002",..: 1 2 3 4 5 6 7 8 9 10 ...
     ..$ area : num [1:34692] 56.4 118.7 214.2 71.6 1428 ...
     ..$ popdensity: num [1:34692] 1557.1 1996.6 987.6 1083.3 95.6 ...
     $ W :Formal class 'SpatialPolygons' [package "sp"] with 4 slots
     .. ..@ polygons :List of 1
     .. .. ..$ :Formal class 'Polygons' [package "sp"] with 5 slots
     .. ..@ plotOrder : int 1
     .. ..@ bbox : num [1:2, 1:2] 4031 2684 4672 3550
     .. .. ..- attr(*, "dimnames")=List of 2
     .. ..@ proj4string:Formal class 'CRS' [package "sp"] with 1 slot
     $ qmatrix: logi [1:2, 1:2] TRUE FALSE FALSE TRUE
     ..- attr(*, "dimnames")=List of 2
     .. ..$ : chr [1:2] "B" "C"
     .. ..$ : chr [1:2] "B" "C"
     - attr(*, "class")= chr "epidataCS"
    > ## see help("imdepi") for more info on the data set
    >
    > ## extraction methods subset the 'events' component
    > ## (thereby taking care of the validity of the epidataCS object,
    > ## for instance the hidden auxiliary column .sources)
    > imdepi[101:200,]
    Observation period: 0 - 2557
    Observation window (bounding box): [4031.295, 4672.253] x [2684.102, 3549.931]
    Spatio-temporal grid (not shown): 84 time blocks x 413 tiles
    Types of events: "B" "C"
    Overall number of events: 100
    
     coordinates time tile type eps.t eps.s sex agegrp BLOCK
    101 (4052.863, 3096.593) 353.4000 05354 B 30 200 female [19,Inf) 12
    102 (4556.355, 3262.682) 357.6672 11000 B 30 200 male [3,19) 12
    103 (4141.513, 3157.541) 358.5114 05913 C 30 200 female [3,19) 12
    104 (4417.974, 2759.005) 360.0455 09188 C 30 200 female [0,3) 12
    105 (4442.943, 2793.727) 363.5171 09184 C 30 200 male [0,3) 12
    106 (4072.581, 3119.168) 364.1096 05116 C 30 200 male [0,3) 12
     start popdensity
    101 334 567.2927
    102 334 3834.0946
    103 334 2093.0388
    104 334 265.3942
    105 334 472.7581
    106 334 1525.4796
    [....]
    > tail(imdepi, n=4) # reduce the epidemic to the last 4 events
    Error in .tailindices(x, n) : could not find function ".tailindices"
    Calls: tail -> tail.epidataCS -> my.tail.matrix
    Execution halted
Flavor: r-devel-windows-ix86+x86_64-gcc8

Version: 1.17.2
Flags: --no-vignettes
Check: dependencies in R code
Result: NOTE
    Missing or unexported object: 'grDevices::hcl.colors'
Flavor: r-oldrel-windows-ix86+x86_64

Version: 1.17.2
Check: dependencies in R code
Result: NOTE
    Missing or unexported object: ‘grDevices::hcl.colors’
Flavor: r-oldrel-osx-x86_64