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.