pytimetk icon indicating copy to clipboard operation
pytimetk copied to clipboard

PyTimeTK Roadmap

Open mdancho84 opened this issue 3 years ago • 4 comments

Phase 1: MVP Package

Develop a minimal package with the most important functions.

Use this guide: https://py-pkgs.org/03-how-to-package-a-python

Priority 1 - Core Data and Data Frame Operations

  • [x] summarise_by_time() / summarize_by_time()
  • [x] Data Sets

Priority 2 - Plot Time Series

  • [x] plot_time_series() - Not sure if we should go with plotly or altair for interactive mode. I feel we should go with plotnine for non-interactive. Will need smooth_vec().

Priority 3 - Data Wrangling

  • [x] future_frame() - We will also need tk_make_future_timeseries() and tk_make_timeseries()
  • [x] pad_by_time()

Priority 4 - Augment Operations

Note - These functions should overwrite columns that are named the same in the input data frame.

  • [x] tk.augment_timeseries_signature() - tk.get_timeseries_signature()
  • [x] tk.augment_holiday_signature() - Uses holidays package
  • [x] tk.augment_lags() / tk.agument_leads()
  • [x] tk.augment_rolling()
  • [ ] tk.augment_fourier()

Priority 5 - TS Features

  • [x] tk.ts_features()

Phase 2: Expand Functionality

Anomalize in Python

  • [ ] Convert Anomalize R package to tk.anomalize()

Time Series Plotting Utilities

  • [ ] Plot ACF
  • [ ] Plot Anomalies
  • [ ] Plot Seasonality
  • [ ] Plot STL Decomposition
  • [ ] Plot Time Series Regression

Time Series Inspection, Frequency, and Trend

  • [x] TS Summary: tk.ts_summary()
  • [x] Time Scale Template
  • [ ] Automatic Frequency Detection
  • [ ] Automatic Trend Detection

Applied Tutorials

  • [ ] Sales CRM Database Analysis
  • [x] Finance Investment Analysis
  • [ ] Demand Forecasting
  • [ ] Anomaly Detection
  • [ ] Clustering

Phase 3: Extend Sklearn

  • [ ] Time Series Splitting / Cross Validation Functionality
  • [ ] Preprocessors & Feature Engineering
  • [ ] Vectorized Functions - Box Cox,
  • [ ] Plot Time Series CV

Phase 4: Fill in Function Gaps Where Needed

Add additional functionality that was not identified in Phases 1-3.

mdancho84 avatar Apr 16 '21 20:04 mdancho84