1 #' Obtain jump forecast by the Neighbors method
3 #' @inheritParams computeForecast
4 #' @inheritParams getZeroJumpPredict
6 getNeighborsJumpPredict = function(data, today, memory, horizon, params, ...)
8 first_day = max(1, today-memory)
9 filter = (params$indices >= first_day)
10 indices = params$indices[filter]
11 weights = params$weights[filter]
13 if (any(is.na(weights) | is.na(indices)))
16 gaps = sapply(indices, function(i) {
17 head( data$getSerie(i+1), 1) - tail( data$getSerie(i), 1)
19 scal_product = weights * gaps
20 norm_fact = sum( weights[!is.na(scal_product)] )
21 sum(scal_product, na.rm=TRUE) / norm_fact