Transform Univariate Time Series.
transx
Univariate time series operations that follow an opinionated design. The main principle of transx
is to keep the number of observations the same. Operations that reduce this number have to fill the observations gap.
Design Principles
- The input and the output will always be a numeric vector.
- The output retains the same length as the input.
- Uses a filling logic, where
fill
is used to keep the length of vector identical.
Optional:
na.rm
: Which setsna.rm = TRUE
by default when needed to.keep.attrs
: Which after manipulations the new series would retain the same attributes.display
: Display informative message for the transformation procedure.
Installation
You can install the development version from Github.
remotes::install_github("transx")
Usage
This is a basic example with lagged and leading values. fill
can be achieved either by value or by function. The function can be a build-in function such as mean, or median, that fill-in by a single values, or it can be of the fill_*
family such as fill_locf
and fill_nocb
that consider the location of the observations before performing the filling.
library(transx)
x <- c(5,3,2,2,5)
lagx(x)
#> [1] NA 5 3 2 2
lagx(x, fill = 1)
#> [1] 1 5 3 2 2
lagx(x, fill = mean)
#> [1] 3 5 3 2 2
lagx(x, fill = fill_nocb)
#> [1] 5 5 3 2 2
Code of Conduct
Please note that the transx project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.