hai_fourier_discrete_augment: Augment Function Fourier Discrete

View source: R/augment-hai-fourier-discrete.R

hai_fourier_discrete_augmentR Documentation

Augment Function Fourier Discrete

Description

Takes a numeric vector(s) or date and will return a tibble of one of the following:

  • "sin"

  • "cos"

  • "sincos"

  • c("sin","cos","sincos") When either of these values falls below zero, then zero else one

Usage

hai_fourier_discrete_augment(
  .data,
  .value,
  .period,
  .order,
  .names = "auto",
  .scale_type = c("sin", "cos", "sincos")
)

Arguments

.data

The data being passed that will be augmented by the function.

.value

This is passed rlang::enquo() to capture the vectors you want to augment.

.period

The number of observations that complete a cycle

.order

The fourier term order

.names

The default is "auto"

.scale_type

A character of one of the following: "sin","cos", or sincos" All can be passed by setting the param equal to c("sin","cos","sincos")

Details

Takes a numeric vector or a date and will return a vector of one of the following:

  • "sin"

  • "cos"

  • "sincos"

  • c("sin","cos","sincos")

This function is intended to be used on its own in order to add columns to a tibble.

Value

A augmented tibble

Author(s)

Steven P. Sanderson II, MPH

See Also

Other Augment Function: hai_fourier_augment(), hai_hyperbolic_augment(), hai_polynomial_augment(), hai_scale_zero_one_augment(), hai_scale_zscore_augment(), hai_winsorized_move_augment(), hai_winsorized_truncate_augment()

Examples

suppressPackageStartupMessages(library(dplyr))

len_out <- 24
by_unit <- "month"
start_date <- as.Date("2021-01-01")

data_tbl <- tibble(
  date_col = seq.Date(from = start_date, length.out = len_out, by = by_unit),
  a = rnorm(len_out),
  b = runif(len_out)
)

hai_fourier_discrete_augment(data_tbl, b, .period = 2 * 12, .order = 1, .scale_type = "sin")
hai_fourier_discrete_augment(data_tbl, b, .period = 2 * 12, .order = 1, .scale_type = "cos")


healthyR.ai documentation built on April 3, 2023, 5:24 p.m.