| ts_clean_vec {timetk} | R Documentation |
Replace Outliers & Missing Values in a Time Series
Description
This is mainly a wrapper for the outlier cleaning function,
tsclean(), from the forecast R package.
The ts_clean_vec() function includes arguments for applying
seasonality to numeric vector (non-ts) via the period argument.
Usage
ts_clean_vec(x, period = 1, lambda = NULL)
Arguments
x |
A numeric vector. |
period |
A seasonal period to use during the transformation. If |
lambda |
A box cox transformation parameter. If set to |
Details
Cleaning Outliers
Non-Seasonal (
period = 1): Usesstats::supsmu()Seasonal (
period > 1): Usesforecast::mstl()withrobust = TRUE(robust STL decomposition) for seasonal series.
To estimate missing values and outlier replacements, linear interpolation is used on the
(possibly seasonally adjusted) series. See forecast::tsoutliers() for the outlier detection method.
Box Cox Transformation
In many circumstances, a Box Cox transformation can help. Especially if the series is multiplicative
meaning the variance grows exponentially. A Box Cox transformation can be automated by setting lambda = "auto"
or can be specified by setting lambda = numeric value.
Value
A numeric vector with the missing values and/or anomalies transformed to imputed values.
References
See Also
Box Cox Transformation:
box_cox_vec()Lag Transformation:
lag_vec()Differencing Transformation:
diff_vec()Rolling Window Transformation:
slidify_vec()Loess Smoothing Transformation:
smooth_vec()Fourier Series:
fourier_vec()Missing Value Imputation for Time Series:
ts_impute_vec()Outlier Cleaning for Time Series:
ts_clean_vec()
Examples
library(dplyr)
# --- VECTOR ----
values <- c(1,2,3, 4*2, 5,6,7, NA, 9,10,11, 12*2)
values
# Linear interpolation + Outlier Cleansing
ts_clean_vec(values, period = 1, lambda = NULL)
# Seasonal Interpolation: set period = 4
ts_clean_vec(values, period = 4, lambda = NULL)
# Seasonal Interpolation with Box Cox Transformation (internal)
ts_clean_vec(values, period = 4, lambda = "auto")