Skip to content

Releases: business-science/timetk

timetk 2.9.1

29 Aug 12:52

Choose a tag to compare

timetk 2.9.1

Highlights

  • Smarter time parsing & sequencing. New internal generics and S3 methods make date/time parsing and future sequence generation more robust across Date, POSIXct, hms, yearmon, and yearqtr.
  • Docs & site polish. Roxygen links modernized, vignette overhauled for anomaly workflows, and pkgdown styling refreshed.
  • CI refresh. GitHub Actions updated to latest actions and small reliability fixes.

New

  • Internal generics/S3 methods (exported) for time handling:

    • convert_length_out_chr_to_num() with methods for Date, POSIXt, yearmon, yearqtr.
    • list_to_datetime() with methods for POSIXct, Date, hms, yearmon, yearqtr.
    • lookup_defaults() with methods for POSIXct, Date, hms, yearmon, yearqtr.

Improvements

  • Time sequence generation: tk_make_timeseries() backend updated to use the new convert_length_out_chr_to_num.* methods, improving support for calendar and sub-daily indexes.

  • Parsing utilities: list_to_datetime.* & lookup_defaults.* reduce edge cases in date/time parsing and default boundary lookups.

  • Documentation links: Switched many references to fully qualified links (e.g., recipes:: and anytime::) for clearer, clickable docs.

  • Site/UX:

    • Navbar and TOC color tweaks (pkgdown/extra.css) for better contrast.
    • Navbar label: “Sequences & Data Structures” → “Time Sequences & Data Structures”.
  • Roxygen: Updated to RoxygenNote: 7.3.2.

Bug fixes

  • M4 dataset docs: Updated source URL to the current M4 competition page across all M4 datasets.
  • Tests: tk_tbl() test for timeSeries now guarded with skip_if_not_installed() and creates the object inside the test for cleaner isolation.

Vignettes

  • TK08_Automatic_Anomaly_Detection: Rewritten to use the wikipedia_traffic_daily dataset and the anomalize() workflow (plot_anomalies*() family), with clearer decomposition, detection, and “cleaned” visualization steps.

CI / Build

  • test-coverage workflow:

    • actions/checkoutv4, actions/upload-artifactv4.
    • More robust find usage with quoted paths.
    • Added commented guidance for optional caching.
  • CRAN submission metadata updated for 2.9.1.

Breaking changes

  • None.

Deprecations

  • None.

Notes for users

  • If you create future time sequences or parse specialized index classes, you should see improved behavior across index types with no code changes required.

Full Changelog: 2.9.0...2.9.1

timetk 2.9.0

03 Nov 14:00

Choose a tag to compare

timetk 2.9.0

Anomalize Integration:

anomalize R package is now available in timetk:

  1. anomlize(): 1 function that breaks down, identifies, and cleans anomalies
  2. plot_anomalies(): Visualize the anomalies and anomaly bands
  3. plot_anomalies_decomp(): Visualize the time series decomposition. Make adjustments as needed.
  4. plot_anomalies_cleaned(): Visualize the before/after of cleaning anomalies.

Note - anomalize(.method): Only the .method = "stl" is supported at this time. The "twitter" method is also planned.

Timetk 2.8.1

01 Jun 12:22

Choose a tag to compare

Trelliscope Plotting

  • Expose the facet_trelliscope() plotting parameters.
    • plot_time_series()
    • plot_time_series_boxplot()
    • plot_anomaly_diagnostics()

Timetk 2.8.0

07 Apr 19:06

Choose a tag to compare

New Features

Many of the plotting functions have been upgraded for use with trelliscopejs for
easier visualization of many time series.

  • plot_time_series():

    • Gets a new argument trelliscope: Used for visualizing many time series.
    • Gets a new argument .facet_strip_remove to remove facet strips since trelliscope is automatically labeled.
    • Gets a new argument .facet_nrow to adjust grid with trelliscope.
    • The default argument for facet_collapse = TRUE was changed to FALSE for better compatibility with Trelliscope JS. This may cause some plots to have multiple groups take up extra space in the strip.
  • plot_time_series_boxplot():

    • Gets a new argument trelliscope: Used for visualizing many time series.
    • Gets a new argument .facet_strip_remove to remove facet strips since trelliscope is automatically labeled.
    • Gets a new argument .facet_nrow to adjust grid with trelliscope.
    • The default argument for .facet_collapse = TRUE was changed to FALSE for better compatibility with Trelliscope JS. This may cause some plots to have multiple groups take up extra space in the strip.
  • plot_anomaly_diagnostics():

    • Gets a new argument trelliscope: Used for visualizing many time series.
    • Gets a new argument .facet_strip_remove to remove facet strips since trelliscope is automatically labeled.
    • Gets a new argument .facet_nrow to adjust grid with trelliscope.
    • The default argument for .facet_collapse = TRUE was changed to FALSE for better compatibility with Trelliscope JS. This may cause some plots to have multiple groups take up extra space in the strip.

Updates & Bug Fixes

  • Recipes steps (e.g. step_timeseries_signature()) use the new recipes::print_step() function. Requires recipes >= 0.2.0. #110

  • Offset parameter in step_log_interval() was not working properly. Now works. #103

Potential Breaking Changes

  • The default argument for .facet_collapse = TRUE was changed to FALSE for better compatibility with Trelliscope JS. This may cause some plots to have multiple groups take up extra space in the strip.

Timetk 2.7.0

19 Jan 11:41

Choose a tag to compare

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

  • plot_time_series_boxplot(): A new function that makes plotting time series boxplots simple using a .period argument for time series aggregation.

New Vignettes

Improvements

Improvements for point forecasting when the target is n-periods into the future.

  • time_series_cv(), time_series_split(): New parameter point_forecast. This is useful for testing / assessing the n-th prediction in the future. When set to TRUE, will return a single point that returns on the last value in assess.

Fixes

  • Updates for rlang > 0.4.11 (dev version) #98
  • plot_time_series(): Smoother no longer fails when time series has 1 observation #106

Timetk 2.6.2

15 Nov 14:01

Choose a tag to compare

Improvements

  • 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

  • tk_make_timeseries() and tk_make_future_timeseries() are now able to handle end of months. #72

  • tk_tbl.zoo(): Fix an issue when readr::type_convert() produces warning messages about not having character columns in inputs. #89

  • plot_time_series_regression(): Fixed an issue when lags are added to .formula. Pads lags with NA.

  • step_fourier() and fourier_vec(): Fixed issue with step_fourier failing with one observation. Added scale_factor argument to override date sequences with the stored scale factor. #77