timetk Unreleased

New Features

  • tk_tsfeatures(): A new function that makes it easy to generate time series feature matrix using tsfeatures. The main benefit is that you can pipe time series data in tibbles with dplyr groups. The features will be produced by group. #95 #84

New Vignettes

timetk 2.6.2 2021-11-16


  • summarize_by_time(): Added a .week_start argument to allow specifying .week_start = 1 for Monday start. Default is 7 for Sunday Start. This can also be changed with the lubridate by setting the lubridate.week.start option.

  • Plotting Functions:

    • Several plotting functions gain a new .facet_dir argument for adjusting the direction of facet_wrap(dir). #94
    • Plot ACF Diagnostics (plot_acf_diagnostics()): Change default parameter to .show_white_noise_bars = TRUE. #85
    • plot_timeseries_regression(): Can now show_summary for group-wise models when visualizing groups
  • Time Series CV (time_series_cv()): Add Label for tune_results

  • Improve speed of pad_by_time(). #93

Bug Fixes

timetk 2.6.1 2021-01-18



  • Reduce “New names” messages.
#> New names: 
#> * NA -> ...1 

timetk 2.6.0 2020-11-21

New Functions


timetk 2.5.0 2020-10-22


  • time_series_cv(): Now works with time series groups. This is great for working with panel data.
  • future_frame(): Gets a new argument called .bind_data. When set to TRUE, it performs a data binding operation with the incoming data and the future frame.


  • Tune startup messages (#63)

timetk 2.4.0 2020-10-08

Bug Fixes

timetk 2.3.0 2020-09-29

New Functionality

Bug Fixes

  • Augment functions (e.g. tk_augment_lags()) - Fix bug with grouped functions not being exported
  • Vectorized Functions - Compatabiliy with ts class

timetk 2.2.1 2020-09-01

New Functions

Parallel Processing

  • Parallel backend for use with tune and recipes

Bug Fixes

  • log_interval_vec() - Correct the messaging
  • complement.ts_cv_split - Helper to show time series cross validation splits in list explorer.

timetk 2.2.0 2020-07-18

New Functions


  • plot_acf_diagnostics(): A new argument, .show_white_noise_bars for adding white noise bars to an ACF / PACF Plot.
  • pad_by_time(): New arguments .start_date and .end_date for expanding/contracting the padding windows.

timetk 2.1.0 2020-07-03

New Functions


Plotting Improvements

  • All plotting functions now support Tab Completion (a minor breaking change was needed to do so, see breaking changes below)
  • plot_time_series():
    • Add .legend_show to toggle on/off legends.
    • Permit numeric index (fix issue with smoother failing)

Breaking Changes

Bug Fixes

timetk 2.0.0 2020-05-31

New Interactive Plotting Functions

New Data Wrangling Functions

  • future_frame(): Make a future tibble from an existing time-based tibble.

New Diagnostic / Data Processing Functions

  • tk_anomaly_diagnostics() - Group-wise anomaly detection and diagnostics. A wrapper for the anomalize R package functions without importing anomalize.

New Vectorized Functions:

New Recipes Preprocessing Steps:

  • step_ts_pad() - Preprocessing for padding time series data. Adds rows to fill in gaps and can be used with step_ts_impute() to interpolate going from low to high frequency!
  • step_ts_clean() - Preprocessing step for cleaning outliers and imputing missing values in a time series.

New Parsing Functions


  • plot_acf_diagnostics(): The .lags argument now handles time-based phrases (e.g. .lags = "1 month").
  • time_series_cv(): Implements time-based phrases (e.g. initial = "5 years" and assess = "1 year")
  • tk_make_future_timeseries(): The n_future argument has been deprecated for a new length_out argument that accepts both numeric input (e.g. length_out = 12) and time-based phrases (e.g. length_out = "12 months"). A major improvement is that numeric values define the number of timestamps returned even if weekends are removed or holidays are removed. Thus, you can always anticipate the length. (Issue #19).
  • diff_vec: Now reports the initial values used in the differencing calculation.

Bug Fixes:

Breaking Changes:

These should not be of major impact since the 1.0.0 version was just released.

timetk 1.0.0 2020-04-19

New Interactive Plotting Functions:

  • plot_time_series() - A workhorse time-series plotting function that generates interactive plotly plots, consolidates 20+ lines of ggplot2 code, and scales well to many time series using dplyr groups.
  • plot_acf_diagnostics() - Visualize the ACF, PACF, and any number of CCFs in one plot for Multiple Time Series. Interactive plotly by default.
  • plot_seasonal_diagnostics() - Visualize Multiple Seasonality Features for One or More Time Series. Interactive plotly by default.
  • plot_stl_diagnostics() - Visualize STL Decomposition Features for One or More Time Series.
  • plot_time_series_cv_plan() - Visualize the Time Series Cross Validation plan made with time_series_cv().

New Time Series Data Wrangling:

New Recipe Functions:

Feature Generators:

  • step_holiday_signature() - New recipe step for adding 130 holiday features based on individual holidays, locales, and stock exchanges / business holidays.
  • step_fourier() - New recipe step for adding fourier transforms for adding seasonal features to time series data
  • step_roll_apply() - New recipe step for adding rolling summary functions. Similar to recipes::step_window() but is more flexible by enabling application of any summary function.
  • step_smooth() - New recipe step for adding Local Polynomial Regression (LOESS) for smoothing noisy time series
  • step_diff() - New recipe for adding multiple differenced columns. Similar to recipes::step_lag().
  • step_box_cox() - New recipe for transforming predictors. Similar to step_BoxCox() with improvements for forecasting including “guerrero” method for lambda selection and handling of negative data.
  • step_impute_ts() - New recipe for imputing a time series.

New Rsample Functions

  • time_series_cv() - Create rsample cross validation sets for time series. This function produces a sampling plan starting with the most recent time series observations, rolling backwards.

New Vector Functions:

These functions are useful on their own inside of mutate() and power many of the new plotting and recipes functions.

New Augment Functions:

All of the functions are designed for scale. They respect dplyr::group_by().

New Make Functions:

Make date and date-time sequences between start and end dates.

New Get Functions:

New Diagnostic / Data Processing Functions

New Datasets

  • M4 Competition - Sample “economic” datasets from hourly, daily, weekly, monthly, quarterly, and yearly.
  • Walmart Recruiting Retail Sales Forecasting Competition - Sample of 7 retail time series
  • Web Traffic Forecasting (Wikipedia) Competition - Sample of 10 website time series
  • Taylor’s Energy Demand - Single time series with 30-minute interval of energy demand
  • UCI Bike Sharing Daily - A time series consisting of Capital Bikesharing Transaction Counts and related time-based features.


Bug Fixes:

Potential Breaking Changes:

timetk 0.1.3 2020-03-18

New Features:

  • recipes Integration - Ability to apply time series feature engineering in the tidymodels machine learning workflow.
  • New Vignette - “Time Series Machine Learning” (previously forecasting using the time series signature)

Bug Fixes:

  • xts::indexTZ is deprecated. Use tzone instead.
  • Replace arrange_ with arrange.
  • Fix failing tests due to tidyquant 1.0.0 upagrade (single stocks now return an extra symbol column).

timetk 0.1.2 2019-09-25

  • Compatability with tidyquant v0.5.7 - Removed dependency on tidyverse
  • Dependency cleanup - removed devtools and other unncessary dependencies.

timetk 0.1.1 2018-05-14

  • Added timeSeries to Suggests to satisfy a CRAN issue.

timetk 0.1.0 2017-07-25

  • Renamed package timetk. Was formerly timekit.
  • Improvements:
    • Fixed issue with back-ticked date columns
    • Update pkgdown
    • support for robets