Description Usage Arguments Details Value Examples

View source: R/cyclic_encoding.r

Encode a date-time object into a cyclic coordinate system in which the distances between two pairs of dates separated by the same time duration are the same.

1 2 3 4 5 6 | ```
cyclic_encoding(
x,
periods,
encoders = c("sin", "cos"),
week_start = getOption("lubridate.week.start", 7)
)
``` |

`x` |
a date-time object |

`periods` |
a character vector of periods. Follows same specification as period and floor_date functions. |

`encoders` |
names of functions to produce the encoding. Defaults to "sin" and "cos". Names of any predefined functions accepting a numeric input are allowed. |

`week_start` |
day starting a week (used for weekly periods). |

Machine learning models don't know that December 31st and January 1st are
close in our human calendar sense. `cyclic_encoding`

makes it obvious to the
machine learner that two calendar dates are close by mapping the dates onto
the circle.

a numeric matrix with number of columns equal `length(periods) * length(types)`

.

1 2 3 4 5 | ```
times <- ymd_hms("2019-01-01 00:00:00") + hours(0:23)
cyclic_encoding(times, c("day", "week", "month"))
plot(cyclic_encoding(times, "1d"))
plot(cyclic_encoding(times, "2d"), xlim = c(-1, 1))
plot(cyclic_encoding(times, "4d"), xlim = c(-1, 1))
``` |

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.