Manipulating Time Series Data in R
Harrison Brown
Graduate Researcher in Geography
Rolling window:
Expanding window:
Increasing window width:
What is the summary of the data available to us?
Fixed start point:
Expanding windows in R:
zoo::rollapply()
!width
can be single number or vectorExpanding window width:
1
, 2
, 3
, 4
, ...Function for sequence of numbers:
base::seq_along()
seq_along(daily_temp)
[1] 1 2 3 4 5 6 7 8 9 ...
... 363 364 365
exp_widths <- seq_along(daily_temp)
exp_widths
[1] 1 2 3 4 5 ... 363 364 365
temp_expand <-
rollapply(
data = daily_temp,
FUN = mean,
width = exp_widths,
# Alignment must be 'right'
align = 'right'
)
ggplot() + # Original data geom_line(data = daily_temp, aes(x = Index, y = daily_temp), color = 'grey50') +
# Expanding window plot geom_line(data = temp_expand, aes(x = Index, y = temp_expand), color = 'red') + theme_light() + labs(y = 'Degrees Celsius')
Manipulating Time Series Data in R