Add many rolling window calculations to the data
Quickly use any function as a rolling function and apply to multiple .periods.
Works with dplyr groups too.
tk_augment_slidify(
.data,
.value,
.period,
.f,
...,
.align = c("center", "left", "right"),
.partial = FALSE,
.names = "auto"
).data |
A tibble. |
.value |
One or more column(s) to have a transformation applied. Usage
of |
.period |
One or more periods for the rolling window(s) |
.f |
A summary |
... |
Optional arguments for the summary function |
.align |
Rolling functions generate |
.partial |
.partial Should the moving window be allowed to return partial (incomplete) windows instead of |
.names |
A vector of names for the new columns. Must be of same length as |
tk_augment_slidify() scales the slidify_vec() function to multiple
time series .periods. See slidify_vec() for examples and usage of the core function
arguments.
Returns a tibble object describing the timeseries.
Augment Operations:
tk_augment_timeseries_signature() - Group-wise augmentation of timestamp features
tk_augment_holiday_signature() - Group-wise augmentation of holiday features
tk_augment_slidify() - Group-wise augmentation of rolling functions
tk_augment_lags() - Group-wise augmentation of lagged data
tk_augment_differences() - Group-wise augmentation of differenced data
tk_augment_fourier() - Group-wise augmentation of fourier series
Underlying Function:
slidify_vec() - The underlying function that powers tk_augment_slidify()
library(tidyverse)
library(tidyquant)
library(timetk)
# Single Column | Multiple Rolling Windows
FANG %>%
select(symbol, date, adjusted) %>%
group_by(symbol) %>%
tk_augment_slidify(
.value = contains("adjust"),
# Multiple rolling windows
.period = c(10, 30, 60, 90),
.f = AVERAGE,
.partial = TRUE,
.names = str_c("MA_", c(10, 30, 60, 90))
) %>%
ungroup()
# Multiple Columns | Multiple Rolling Windows
FANG %>%
select(symbol, date, adjusted, volume) %>%
group_by(symbol) %>%
tk_augment_slidify(
.value = c(adjusted, volume),
.period = c(10, 30, 60, 90),
.f = AVERAGE,
.partial = TRUE
) %>%
ungroup()Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.