HarveyCumulator {bsts} | R Documentation |
HarveyCumulator
Description
Given a state space model on a fine scale, the Harvey cumulator aggregates the model to a coarser scale (e.g. from days to weeks, or weeks to months).
Usage
HarveyCumulator(fine.series,
contains.end,
membership.fraction)
Arguments
fine.series |
The fine-scale time series to be aggregated. |
contains.end |
A logical vector, with length matching
|
membership.fraction |
The fraction of each fine-scale time
observation belonging to the coarse scale time observation at the
beginning of the time interval. For example, if week i started in
March and ended in April, |
Value
Returns a vector containing the course scale partial aggregates
of fine.series
.
Author(s)
Steven L. Scott steve.the.bayesian@gmail.com
References
Harvey (1990), "Forecasting, structural time series, and the Kalman filter", Cambridge University Press.
Durbin and Koopman (2001), "Time series analysis by state space methods", Oxford University Press.
See Also
Examples
data(goog)
days <- factor(weekdays(index(goog)),
levels = c("Monday", "Tuesday", "Wednesday",
"Thursday", "Friday"),
ordered = TRUE)
## Because of holidays, etc the days do not always go in sequence.
## (Sorry, Rebecca Black! https://www.youtube.com/watch?v=kfVsfOSbJY0)
## diff.days[i] is the number of days between days[i-1] and days[i].
## We know that days[i] is the end of a week if diff.days[i] < 0.
diff.days <- tail(as.numeric(days), -1) - head(as.numeric(days), -1)
contains.end <- c(FALSE, diff.days < 0)
goog.weekly <- HarveyCumulator(goog, contains.end, 1)