A unified framework for machine learning with time series

Overview

Welcome to sktime

A unified framework for machine learning with time series

We provide specialized time series algorithms and scikit-learn compatible tools to build, tune and validate time series models for multiple learning problems, including:

  • Forecasting,
  • Time series classification,
  • Time series regression.

For deep learning, see our companion package: sktime-dl.

CI github appveyor azure codecov
Docs readthedocs binder tutorial
Community contributors gitter discord twitter
Code pypi conda python codestyle zenodo

Installation

The package is available via PyPI using:

pip install sktime

Alternatively, you can install it via conda:

conda install -c conda-forge sktime

The package is actively being developed and some features may not be stable yet.

Development version

To install the development version, please see our advanced installation instructions.

Quickstart

Forecasting

from sktime.forecasting.all import *

y = load_airline()
y_train, y_test = temporal_train_test_split(y)
fh = ForecastingHorizon(y_test.index, is_relative=False)
forecaster = ThetaForecaster(sp=12)  # monthly seasonal periodicity
forecaster.fit(y_train)
y_pred = forecaster.predict(fh)
smape_loss(y_test, y_pred)
>>> 0.08661468139978168

For more, check out the forecasting tutorial.

Time Series Classification

from sktime.classification.all import *
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

X, y = load_arrow_head(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y)
classifier = TimeSeriesForest()
classifier.fit(X_train, y_train)
y_pred = classifier.predict(X_test)
accuracy_score(y_test, y_pred)
>>> 0.8679245283018868

For more, check out the time series classification tutorial.

Documentation

How to contribute

We follow the all-contributors specification - and all kinds of contributions are welcome!

If you have a question, chat with us or raise an issue. Your help and feedback is extremely welcome!

Development roadmap

  1. Multivariate/panel forecasting,
  2. Time series clustering,
  3. Time series annotation (segmentation and anomaly detection),
  4. Probabilistic time series modelling, including survival and point processes.

Read our detailed roadmap here.

How to cite sktime

If you use sktime in a scientific publication, we would appreciate citations to the following paper:

Markus Löning, Anthony Bagnall, Sajaysurya Ganesh, Viktor Kazakov, Jason Lines, Franz Király (2019): “sktime: A Unified Interface for Machine Learning with Time Series”

Bibtex entry:

@inproceedings{sktime,
    author = {L{\"{o}}ning, Markus and Bagnall, Anthony and Ganesh, Sajaysurya and Kazakov, Viktor and Lines, Jason and Kir{\'{a}}ly, Franz J},
    booktitle = {Workshop on Systems for ML at NeurIPS 2019},
    title = {{sktime: A Unified Interface for Machine Learning with Time Series}},
    date = {2019},
}
Comments
  • Pairwise transformers, kernels/distances on tabular data and panel data - base class, examples, extension templates

    Pairwise transformers, kernels/distances on tabular data and panel data - base class, examples, extension templates

    Related to #52 (oldest open issue!) and #1062.

    This PR contains:

    • base classes for a new scitype: pairwise transformers, i.e., distance matrix makers and kernel matrix makers; there are two base classes for two different inputs, tabular (classical distances/kernels) and time series panels (e.g., time warping distances)
    • an example tabular distance ScipyDist that interfaces the scipy distances
    • an example panel distance AggrDist that uses any tabular distance to create an aggregate sample distance between time series, e.g., the mean Euclidean distance
    • extension templates for both scitypes
    • tests for the concrete scitypes added

    This may be useful for future extension of the clustering module, or refactorings and extensions of the TSC module, @chrisholder, @TonyBagnall.

    Also pinging @jasonlines since this is a proposal how the existing distances (due to @jasonlines) could be refactored.

    opened by fkiraly 67
  • [ENH] Save/Load Functionality for both Classical and DL Estimators

    [ENH] Save/Load Functionality for both Classical and DL Estimators

    Reference Issues/PRs

    Fixes #3022

    What does this implement/fix? Explain your changes.

    The Save/Load function for classical estimators is from #3336 and has been expanded for DL models along the same design. Keras is known to be problematic for certain kinds of (de)serialization, so this uses model.save() from keras along with pickle.dump(). The estimators are saved as .zip files.

    Components of this directory include:

    1. Metadata
    2. Object
    3. Keras History
    4. Keras Model subdirectory

    The first two components are the same as previously mentioned PR, stored differently to avoid this problem.

    All the attributes are saved and restored (optimizers/history etc.) appropriately.

    Does your contribution introduce a new dependency? If yes, which one?

    No

    What should a reviewer concentrate their feedback on?

    One thing in __getstate__() and __setstate__() might be a source of contention, I've explained why it was necessary and I believe it is the simplest solution.

    Any other comments?

    PR checklist

    For all contributions
    • [x] The PR title starts with either [ENH], [MNT], [DOC], or [BUG] indicating whether the PR topic is related to enhancement, maintenance, documentation, or bug.
    implementing framework 
    opened by achieveordie 59
  • Forecasting support for multivariate y and multiple input/output types - working prototype

    Forecasting support for multivariate y and multiple input/output types - working prototype

    This is a merge/review ready sketch for how multivariate y could be supported for multivariate forecasters, alongside the possibility to pass np.array and pd.Series. This is based on the design in STEP no.5, adapted to the new forecasting base class.

    The key ingredient are:

    • converters parameterized by from, to, and as - in the convertIOmodule. Besides the obvious conversion functionality, the converters can be given access to a dictionary via reference in the store argument, where information for inverting lossy conversions (like from pd.DataFrame to np.array) can be stored
    • a new tag y_type which encodes the type of y that the private _fit, _predict, and _update assume internally - for now, it's just one type and not a list of compatible types
    • some logic in the public "plumbing" area of fit, predict, update, which converts inputs to the public layer to the desired input of the logic layer and back

    This is for discussion, and I expect major change before we merge.

    It might be especially interesting to discuss the following interaction with typing: the third argument of the converter, the "as" argument, is a scitype, and designed to have the same name as the respective typing composite type. Also see discussion in #965, #973 and #974.

    Thinking of the logical continuation of this:

    • extend this to the other arguments, e.g., X
    • the individual argument checks like check_X etc should be replaced by checks of the kind check(what, as : scitype), e.g., check(y, "Series") should replace the less generic check_y.
    • extend this to time series classification, to support 3D numpy arrays, awkward arrays, nested data frames

    A "visionary" pathway may see this working with type annotations that are scitypes, not typing machine types, e.g.,

    fit(X : Series, Y : Series)
    etc
    _fit(X: Series, Y : UnivariateSeries)
    

    and checks/conversions being done automatically.

    module:forecasting 
    opened by fkiraly 56
  • [ENH] refactored `KNeighborsTimeSeriesClassifier`

    [ENH] refactored `KNeighborsTimeSeriesClassifier`

    This PR is a refactor of the KNeighborsTimeSeriesClassifier.

    It does three things:

    • removes the (in my opinion) awkward and hard-to-maintain double inheritance of KNeighborsTimeSeriesClassifier from sklearn's knn classifier. Instead adopts a wrapper pattern around the sklearn public interface, with much of the code simplified through passing distance matrices directly to sklearn.
    • extends the interface to allow passing of arbitrary distances that are callables. This supports the composable distance interface from #1858 out-of-the-box (with sklearn style parameter inspectable composition/pipelining), and can be used to plug in custom time series distances.
    • tests that rely on random seeds are updated with new expected output values

    This PR also fixes two unreported bugs:

    • the algorithm parameter of KNeighborsTimeSeriesClassifier was not passed to the sklearn KNeighbors classifier, the value being passed was always the default "brute". https://github.com/alan-turing-institute/sktime/issues/2774
    • corrected docstring in pairwise_distance which was missing options

    and makes one minor change:

    • replaces loops in tests for KNeighborsTimeSeriesClassifier by mark.parametrize
    module:classification 
    opened by fkiraly 54
  • [ENH] MLflow custom flavor for `sktime` forecasting

    [ENH] MLflow custom flavor for `sktime` forecasting

    Reference Issues/PRs

    Resolves #1215

    What does this implement/fix? Explain your changes.

    This PR adds mlflow custom model flavor for sktime. The implementation closely follows the approach of mlflow built-in model flavors, see pmdarima as an example in mlflow repo (for more details see mlflow.pmdarima and tests.pmdarima.test_pmdarima_model_export). I also added a mlflow notebook under examples which could be added to the sphinx docs.

    Does your contribution introduce a new dependency? If yes, which one?

    New dependencies introduced: boto3, mlflow, moto

    I tried to add all dependencies as soft dependencies but ran into a challenge for mlflow. We need to import pyfunc from mlflow at the module level to enable loading sktime model as pyfunc flavor. This will not work if we import pyfunc inside the functions.

    Would it be acceptable to have mlflow as core dependency or do you have another suggestion?

    What should a reviewer concentrate their feedback on?

    • how we want to handle the open dependency question
    • check the _SktimeModelWrapperclass which contains the sktime custom inference logic
    • predict method of _SktimeModelWrapper is only allowed to take a single DataFrame as an input (see mlflow documentation for more details) - thus we can pass exogenous regressor only as 2D or 3D numpy array. Based on my understanding this would cover all forecasters utilizing scitypes Series and Panel - can you confirm this?
    • whether you see the need to add more unit tests
    • should we add example notebook to sphinx docs? Is there anything in the code that needs to be modified for this inclusion?

    Any other comments?

    PR checklist

    For all contributions
    • [x] I've added myself to the list of contributors.
    • [x] Optionally, I've updated sktime's CODEOWNERS to receive notifications about future changes to these files.
    • [x] I've added unit tests and made sure they pass locally.
    • [x] The PR title starts with either [ENH], [MNT], [DOC], or [BUG] indicating whether the PR topic is related to enhancement, maintenance, documentation, or bug.
    For new estimators
    • [ ] I've added the estimator to the online documentation.
    • [ ] I've updated the existing example notebooks or provided a new one to showcase how my estimator works.
    module:forecasting 
    opened by benjaminbluhm 52
  • CI/CD refactor and switch to github actions

    CI/CD refactor and switch to github actions

    Reference Issues/PRs

    • Fixes #1482
    • Fixes #1728
    • Fixes #1803
    • Fixes #1832

    See also #1150 Refactoring of github actions workflows started in #1321

    Currently blocked by:

    • [x] #1644
    • [x] #1661
    • [x] #1662
    • [x] #1792
    • [x] #1747
    • [x] #1783
    • [x] #1803
    • [x] update installation instructions in docs/source/installation.rst

    What does this implement/fix? Explain your changes.

    This is a rather substantial effort involving changes to how sktime is build and distributed. The main changes are:

    • Add pyproject.toml (see PEP 621 and PEP 633]. The intention behind is to collect all package matadata and dependencies in one place.
    • Add sets of optional dependencies:
      • all_extras all "soft" dependencies
      • dev packages useful for development and testing
      • binder packages required for binder and running notebook examples
      • docs packages required to build the documentation
    • Add section to build time dependencies.
    • Refactor existing CI/CD pipelines to use the new build configuration.
    • Introduced a new CI/CD pipelines for running tests across win, mac, linux and py37, py38, py39 with github actions.
    • Removed the obsolete requirements files.
    • Include wheels build for macosx on arm64.

    Removed

    • ❌ Drop support for python3.6
    • ❌ Drop appveyor and azure pipelines

    High level diagram for the CI/CD workflows

    sktime-cicd

    Does your contribution introduce a new dependency? If yes, which one?

    It does not introduce any new runtime/install dependencies but it could introduce an optional development depencency/build system such as poetry to simplify development/build/distribution.

    What should a reviewer concentrate their feedback on?

    This PR introduces changed to the CI/CD pipelines that would hopefully allow to drop appveyor and azure pipelines in favor of github actions which would simplify the current build and maintenance process.

    Any other comments?

    PR checklist

    For all contributions
    • [x] I've added myself to the list of contributors.
    • [x] Optionally, I've updated sktime's CODEOWNERS to receive notifications about future changes to these files.
    • [x] I've added unit tests and made sure they pass locally.
    opened by lmmentel 48
  • [ENH] Early classification base class

    [ENH] Early classification base class

    Implementation of a base class and converted tests for early classification https://github.com/alan-turing-institute/sktime/issues/1616. Refactors TEASER to use the new base class.

    The new class is very similar to the classification base class, except predict/predict_proba returns 3 ndarrays instead of 1. The first is the already present predictions/probabilities, the second is a set of decisions on whether the returned predictions are safe to use, and the third is a set of state information for each case for use in later decisions and putting together eTSC statistics.

    An optional state_info input for the predict/predict_proba is also required.

    module:classification 
    opened by MatthewMiddlehurst 46
  • [MNT] Remove hcrystalball dependency

    [MNT] Remove hcrystalball dependency

    Reference Issues/PRs

    #2675

    What does this implement/fix? Explain your changes.

    Remove hcrystalball. To be merged before release v0.13.0 and after v0.12.0

    maintenance module:forecasting 
    opened by aiwalter 39
  • Automated learning algorithm overview

    Automated learning algorithm overview

    Contributors: @fkiraly, @mloning, @afzal442, @abdulelahsm, @sparkingdark

    idea:

    web data base for learning algorithms with fields for:

    • class name,
    • scitype (e.g. forecaster, classifier, etc.),
    • original contributor,
    • maintainer/current code owner,
    • link to API reference,

    optional additional fields:

    • links to literature references,
    • package dependency,
    • code health/status (under development, mature, etc),
    • link to example notebooks

    use cases:

    • search for suitable algorithms given a problem
    • search for information about a given algorithm

    reference example from mlr3 library:

    • https://mlr3extralearners.mlr-org.com/articles/learners/learner_status.html
    • https://mlr3extralearners.mlr-org.com/articles/learners/list_learners.html
    • GitHub action to automatically generate table: https://github.com/mlr-org/mlr3extralearners/blob/main/.github/workflows/update_learner_table.yml

    related code in sktime:

    from sktime.utils import all_estimators
    all_estimators(estimator_types="classifier")
    

    https://github.com/alan-turing-institute/sktime/blob/ee7a06843a44f4aaec7582d847e36073a9ab0566/sktime/utils/init.py#L16

    questions:

    • integrate it with API reference: https://www.sktime.org/en/latest/api_reference.html (adding columns to that table)?

    notes:

    • make clear that not all algorithm are reference implementations, even though we link them with the original research paper, some may be re-implemented, adapted or interfaced from other packages
    • encourage people to ping algorithm maintainers directly when they have questions about algorithm using the GitHub user name
    • Adding col for maintainer using GH
    documentation 
    opened by mloning 38
  • Add Clasp for time series segmentation (CIKM'21 publication)

    Add Clasp for time series segmentation (CIKM'21 publication)

    Reference Issues/PRs

    #1346

    What does this implement/fix? Explain your changes.

    This request implements ClaSP, a novel time series segmentation method published at CIKM '21.

    The segmentation is implemented as an annotator, and the profile in ClaSP is implemented as a SeriesToSeriesTransformer.

    implementing algorithms 
    opened by patrickzib 37
  • Refactor tags

    Refactor tags

    Is your feature request related to a problem? Please describe.

    • use of "capabilities" rather than "tags" in classification module
    • unclear naming of _all_tags method
    • inconsistent tags for composition algorithms (see #977)
    • integration in all_estimators function to make them usable in finding/filtering models

    Describe the solution you'd like

    • refactor capabilities into tags
    • rename _all_tags to get_tags and make public
    • add tag kwarg to all_estimators
    • add tests to catch inconsistent tags
    API design 
    opened by mloning 37
  • [BUG] `VAR` fails estimator tests if `ic=

    [BUG] `VAR` fails estimator tests if `ic="aic"`

    VAR fails the check_estimator tests when ic="aic" is set.

    To reproduce:

    from sktime.forecasting.var import VAR
    from sktime.utils.estimator_checks import check_estimator
    
    f = VAR(ic="aic")
    
    check_estimator(f, return_exceptions=False)
    

    Unclear why, I noticed via https://github.com/sktime/sktime/pull/4043

    bug module:forecasting 
    opened by fkiraly 0
  • [ENH] rolling window (out of sample) detrender

    [ENH] rolling window (out of sample) detrender

    It would be good to have a rolling window detrender that allows out-of-sample forecast detrending, i.e., computing rolling window out-of-sample residuals rather than in-sample residuals.

    The current Detrender computes in-sample residuals, when naively applied (via fit_transform, which is called in a forecasting pipeline).

    Not sure whether this should be an option in the class or a separate class - it should probably take a splitter (inheriting from BaseSplitter) as an argument. There is also some thought to be had around what should happen if the series seen in transform is not entirely identical nor entirely different from the one in fit.

    If someone wants to take this up soon, it is perhaps best to base this on the simplified logic in https://github.com/sktime/sktime/pull/4053 rather than the current main.

    feature request good first issue module:forecasting module:transformations enhancement 
    opened by fkiraly 0
  • [ENH][BUG] clean up `Detrender` and implement correct multivariate behaviour

    [ENH][BUG] clean up `Detrender` and implement correct multivariate behaviour

    This PR fixes https://github.com/sktime/sktime/issues/4051 and also simplifies the logic in the Detrender.

    As the BaseForecasting interface supports loop over hierarchy instances and variables natively, all the case distinctions internally can go, and with it goes the incorrect multivariate implementation.

    module:forecasting module:transformations bugfix enhancement 
    opened by fkiraly 1
  • [ENH] Adding `min_periods` in `WindowSummarizer` to avoid different behaviour in the future

    [ENH] Adding `min_periods` in `WindowSummarizer` to avoid different behaviour in the future

    Reference Issues/PRs

    Fixes #4050

    What does this implement/fix? Explain your changes.

    In the WindowSummarizer class, min_periods is explicitly defined in the pandas rolling function call with the value equal to the window_length.

    Does your contribution introduce a new dependency? If yes, which one?

    No.

    opened by arnavrneo 2
  • [BUG] incorrect multivariate detrending in `Detrender`

    [BUG] incorrect multivariate detrending in `Detrender`

    Currently, the Detrender transformer implements multivariate detrending incorrectly, and in contrast to what its docstring says.

    The difference between "should" and "is" happens if the forecaster passed is genuinely multivariate - in that case, the Detrender coerces it to univariate, and fits an univariate version per variable, instead of just applying the multivariate forecaster and detrending via it.

    This has the status of a bug since the docstring does not agree with content, and the content is contrary to user expectation.

    module:forecasting module:transformations enhancement 
    opened by fkiraly 0
  • [ENH] Explicitly specify `min_periods` in `WindowSummarizer` to avoid different behaviour in the future

    [ENH] Explicitly specify `min_periods` in `WindowSummarizer` to avoid different behaviour in the future

    Is your feature request related to a problem? Please describe.

    Yes. As noticed by @KishManani in the slack, using pandas 1.5.2 for rolling operations (e.g. df.rolling(window=window_size).mean() ) throws a future warning:

    FutureWarning: min_periods=None will default to the size of window consistent with other methods in a future version. Specify min_periods=0 instead.
    

    So, it means that the behaviour of WindowSummarizer transformer (which uses rolling and doesn't specify min_periods at the moment) will change if in future pandas changes the default behaviour to be min_periods=0.

    Describe the solution you'd like Explicitly specifying min_period with the value of window length can make WindowSummarizer to retain it's behaviour even after pandas changes the default.

    Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

    Additional context Add any other context or screenshots about the feature request here.

    enhancement 
    opened by arnavrneo 0
Releases(v0.15.0)
  • v0.15.0(Dec 22, 2022)

    What's new

    Please see our changelog for a description of all changes.

    New Contributors

    • @nilesh05apr made their first contribution in https://github.com/sktime/sktime/pull/3881
    • @GianFree made their first contribution in https://github.com/sktime/sktime/pull/3945
    • @dsanr made their first contribution in https://github.com/sktime/sktime/pull/3887
    • @aquemy made their first contribution in https://github.com/sktime/sktime/pull/3915
    • @nshahpazov made their first contribution in https://github.com/sktime/sktime/pull/3878
    • @benjaminbluhm made their first contribution in https://github.com/sktime/sktime/pull/3912
    • @solen0id made their first contribution in https://github.com/sktime/sktime/pull/3714
    • @badrmarani made their first contribution in https://github.com/sktime/sktime/pull/3968

    All Contributors

    @aiwalter, @aquemy, @badrmarani, @benjaminbluhm, @bethrice44, @chillerobscuro, @ciaran-g, @danbartl, @dsanr, @fkiraly, @GianFree, @KatieBuc, @kcc-lion, @KishManani, @lmmentel, @nilesh05apr, @nshahpazov, @solen0id, @templierw, @TonyBagnall

    Full Changelog: https://github.com/sktime/sktime/compare/v0.14.1...v0.15.0

    Source code(tar.gz)
    Source code(zip)
  • v0.14.1(Nov 30, 2022)

    What's new

    Please see our changelog for a description of all changes.

    New Contributors

    • @matt-wisdom made their first contribution in https://github.com/sktime/sktime/pull/3759
    • @hadifawaz1999 made their first contribution in https://github.com/sktime/sktime/pull/3747
    • @jorenham made their first contribution in https://github.com/sktime/sktime/pull/3723
    • @wolph made their first contribution in https://github.com/sktime/sktime/pull/3723
    • @RikStarmans made their first contribution in https://github.com/sktime/sktime/pull/3768
    • @templierw made their first contribution in https://github.com/sktime/sktime/pull/3805
    • @michaelfeil made their first contribution in https://github.com/sktime/sktime/pull/3786

    All Contributors

    @achieveordie, @aiwalter, @ciaran-g, @danbartl, @eenticott-shell, @fkiraly, @hadifawaz1999, @haskarb, @hoesler, @jorenham, @KishManani, @lmmentel, @matt-wisdom, @MatthewMiddlehurst, @michaelfeil, @RikStarmans, @templierw, @TonyBagnall, @wolph

    Full Changelog: https://github.com/sktime/sktime/compare/v0.14.0...v0.14.1

    Source code(tar.gz)
    Source code(zip)
  • v0.14.0(Nov 7, 2022)

    What's new

    Please see our changelog for a description of all changes.

    All Contributors

    @achieveordie, @aiwalter, @AnH0ang, @arampuria19, @bethrice44, @canbooo, @chillerobscuro, @chrisholder, @ciaran-g, @danbartl, @fkiraly, @GuzalBulatova, @kcc-lion, @khrapovs, @lmmentel, @MatthewMiddlehurst, @miraep8, @shagn, @TonyBagnall, @topher-lo

    Full Changelog: https://github.com/sktime/sktime/compare/v0.13.4...v0.14.0

    Source code(tar.gz)
    Source code(zip)
  • v0.13.4(Sep 27, 2022)

  • v0.13.3(Sep 26, 2022)

    What's new

    Please see our changelog for a description of all changes.

    New Contributors

    • @stepinski made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1940
    • @bugslayer-332 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3340
    • @shagn made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3400
    • @topher-lo made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3449

    All Contributors

    @achieveordie, @aiwalter, @AurumnPegasus, @benHeid, @bethrice44, @bugslayer-332, @fkiraly, @ilkersigirci, @KatieBuc, @khrapovs, @lmmentel, @ltsaprounis, @miraep8, @patrickzib, @paulbauriegel, @shagn, @stepinski, @topher-lo

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.13.2...v0.13.3

    Source code(tar.gz)
    Source code(zip)
  • v0.13.2(Aug 24, 2022)

    What's new

    Please see our changelog for a description of all changes.

    New Contributors

    • @KishManani made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3257
    • @paulbauriegel made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3303
    • @chillerobscuro made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3317

    All Contributors

    @achieveordie, @aiwalter, @chillerobscuro, @chrisholder, @fkiraly, @haskarb, @KatieBuc, @kcc-lion, @KishManani, @miraep8, @patrickzib, @paulbauriegel

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.13.1...v0.13.2

    Source code(tar.gz)
    Source code(zip)
  • v0.13.1(Aug 10, 2022)

    What's new

    Please see our changelog for a description of all changes.

    New Contributors

    • @kcc-lion made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3008
    • @soma2000-lang made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3060
    • @shchur made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3070
    • @jelc53 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3086
    • @Arvind644 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3066
    • @C-mmon made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3111
    • @mariamjabara made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2995
    • @achieveordie made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3109
    • @benHeid made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3167
    • @AnH0ang made their first contribution in https://github.com/alan-turing-institute/sktime/pull/3208

    All Contributors

    @achieveordie, @aiwalter, @AnH0ang, @Arvind644, @AurumnPegasus, @benHeid, @bethrice44, @C-mmon, @ciaran-g, @danbartl, @eenticott-shell, @fkiraly, @jelc53, @kcc-lion, @khrapovs, @lbventura, @lmmentel, @Lovkush-A, @ltsaprounis, @mariamjabara, @MatthewMiddlehurst, @miraep8, @shchur, @soma2000-lang, @sveameyer13, @TNTran92, @tobiasweede, @ZiyaoWei

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.13.0...v0.13.1

    Source code(tar.gz)
    Source code(zip)
  • v0.13.0(Jul 14, 2022)

    What's new

    Please see our changelog for a description of all changes.

    New Contributors

    • @tobiasweede made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2882
    • @jlopezpena made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2979

    All Contributors

    @a-pasos-ruiz, @aiwalter, @AurumnPegasus, @ciaran-g, @fkiraly, @haskarb, @jlopezpena, @KatieBuc, @khrapovs, @lbventura, @lmmentel, @ltsaprounis, @MatthewMiddlehurst, @ris-bali, @TNTran92, @tobiasweede, @TonyBagnall

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v.0.12.1...v.0.13.0

    Source code(tar.gz)
    Source code(zip)
  • v.0.12.1(Jun 28, 2022)

    What's new

    Please see our changelog for a description of all changes.

    New Contributors

    • @AurumnPegasus made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2786

    All Contributors

    @aiwalter, @AurumnPegasus, @bethrice44, @ciaran-g, @fkiraly, @khrapovs, @miraep8

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.12.0...v0.12.1

    Source code(tar.gz)
    Source code(zip)
  • v0.12.0(Jun 13, 2022)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @keepersas made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2676
    • @asattiraju13 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2688
    • @dougollerenshaw made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2722
    • @lbventura made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2648
    • @bethrice44 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2706
    • @ZiyaoWei made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2707
    • @DBCerigo made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2795

    All Contributors

    @aiwalter, @asattiraju13, @bethrice44, @chrisholder, @ciaran-g, @DBCerigo, @dougollerenshaw, @eenticott-shell, @fkiraly, @k1m190r, @keepersas, @khrapovs, @lbventura, @lielleravid, @ltsaprounis, @miraep8, @NoaBenAmi, @Ris-Bali, @TonyBagnall, @ZiyaoWei

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.11.4...v0.12.0

    Source code(tar.gz)
    Source code(zip)
  • v0.11.4(May 13, 2022)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @phershbe made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2630

    All Contributors

    @chrisholder, @ciaran-g, @fkiraly, @khrapovs, @miraep8, @phershbe, @Ris-Bali, @TonyBagnall

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.11.3...v0.11.4

    Source code(tar.gz)
    Source code(zip)
  • v0.11.3(Apr 30, 2022)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @tarpas made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2389
    • @miraep8 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2410
    • @Samuel-Oyeneye made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2503
    • @ksachdeva made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1822
    • @Ris-Bali made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2440

    All Contributors

    @aiwalter, @chrisholder, @ciaran-g, @danbartl, @eenticott-shell, @fkiraly, @GuzalBulatova, @juanitorduz, @KatieBuc, @khrapovs, @lmmentel, @ltsaprounis, @MatthewMiddlehurst, @miraep8, @ris-bali, @Samuel-Oyeneye, @tarpas, @Tomiiwa

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.11.2...v0.11.3

    Source code(tar.gz)
    Source code(zip)
  • v0.11.2(Apr 11, 2022)

    What's Changed

    🐛 Bug Fixes

    • [BUG] temp workaround for unnamed levels in hierarchical X passed to aggregator by @fkiraly in https://github.com/alan-turing-institute/sktime/pull/2432
    • [BUG] forecasting pipeline dunder fix by @fkiraly in https://github.com/alan-turing-institute/sktime/pull/2431
    • [BUG] fix erroneous direct passthrough in ColumnEnsembleForecaster by @fkiraly in https://github.com/alan-turing-institute/sktime/pull/2436
    • [BUG] Incorrect indices returned by make_reduction on hierarchical data fixed by @danbartl in https://github.com/alan-turing-institute/sktime/pull/2438

    Other Changes

    • [MNT] Fix typo in PULL_REQUEST_TEMPLATE.md by @eltociear in https://github.com/alan-turing-institute/sktime/pull/2446
    • Release v0.11.2 by @lmmentel in https://github.com/alan-turing-institute/sktime/pull/2445

    New Contributors

    • @eltociear made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2446

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.11.1...v0.11.2

    Source code(tar.gz)
    Source code(zip)
  • v0.11.1(Apr 10, 2022)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @0saurabh0 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2335
    • @TNTran92 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2304
    • @RISHIKESHAVAN made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2365
    • @NoaBenAmi made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2342
    • @KatieBuc made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2418

    All Contributors

    @0saurabh0, @aiwalter, @ciaran-g, @danbartl, @eenticott-shell, @fkiraly, @katiebuc, @khrapovs, @lmmentel, @ltsaprounis, @MatthewMiddlehurst, @NoaBenAmi, @RISHIKESHAVAN, @TNTran92

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.11.0...v0.11.1

    Source code(tar.gz)
    Source code(zip)
  • v0.11.0(Mar 26, 2022)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @mikofski made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2104
    • @theanorak made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2131
    • @RafaAyGar made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2135
    • @ciaran-g made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2069
    • @dionysisbacchus made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2166
    • @KishenSharma6 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2167
    • @hmtbgc made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2190
    • @cdahlin made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2193
    • @Vasudeva-bit made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2196
    • @FedericoGarza made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2251
    • @Tomiiwa made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2285
    • @lielleravid made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2277

    All Contributors

    @aiwalter, @cdahlin, @chrisholder, @ciaran-g, @danbartl, @dionysisbacchus, @eenticott-shell, @FedericoGarza, @fkiraly, @hmtbgc, @IlyasMoutawwakil, @kejsitake, @KishenSharma6, @lielleravid, @lmmentel, @ltsaprounis, @MatthewMiddlehurst, @mikofski, @RafaAyGar, @theanorak, @Tomiiwa, @TonyBagnall, @Vasudeva-bit

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.10.1...v0.11.0

    Source code(tar.gz)
    Source code(zip)
  • v0.10.1(Feb 20, 2022)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @schettino72 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1973
    • @Saransh-cpp made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2035
    • @Rubiel1 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2042
    • @chicken-biryani made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2014
    • @baggiponte made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1834
    • @RishiKumarRay made their first contribution in https://github.com/alan-turing-institute/sktime/pull/2063

    All Contributors

    All contributors: @aiwalter, @baggiponte, @chicken-biryani, @danbartl, @eenticott-shell, @fkiraly, @khrapovs, @lmmentel, @MatthewMiddlehurst, @rakshitha123, @RishiKumarRay, @Rubiel1, @Saransh-cpp, @schettino72,

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.10.0...v0.10.1

    Source code(tar.gz)
    Source code(zip)
  • v0.10.0(Feb 1, 2022)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @khrapovs made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1743
    • @eenticott-shell made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1672
    • @sumit-158 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1841
    • @ishannangia001 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1848
    • @shubhamkarande13 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1872
    • @k1m190r made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1842
    • @amrith-shell made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1707
    • @rakshitha123 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1901

    All Contributors

    All contributors: @aiwalter, @amrith-shell, @Aparna-Sakshi, @AreloTanoh, @chrisholder, @eenticott-shell, @fkiraly, @k1m190r, @kejsitake, @khrapovs, @lmmentel, @ltsaprounis, @MatthewMiddlehurst, @MrPr3ntice, @mloning, @ngupta23, @rakshitha123, @RNKuhns, @shubhamkarande13, @sumit-158, @TonyBagnall,

    Full Changelog: https://github.com/alan-turing-institute/sktime/compare/v0.9.0...v0.10.0

    Source code(tar.gz)
    Source code(zip)
  • v0.9.0(Dec 8, 2021)

    What's New

    Please see our changelog for a description of all changes.

    New Contributors

    • @OliverMatthews made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1588
    • @Carlosbogo made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1600
    • @chernika158 made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1615
    • @fstinner made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1567
    • @MrPr3ntice made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1636
    • @lmmentel made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1644
    • @AngelPone made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1641
    • @marcio55afr made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1671

    All Contributors

    All contributors: @Carlosbogo, @MatthewMiddlehurst, @OliverMatthews, @RNKuhns, @TonyBagnall, @fkiraly, @freddyaboulton and @mloning

    Source code(tar.gz)
    Source code(zip)
  • v0.8.1(Oct 28, 2021)

    What's New

    Please see our changelog for a description of all changes.

    All contributors: @Aparna-Sakshi, @BINAYKUMAR943, @IlyasMoutawwakil, @MatthewMiddlehurst, @Piyush1729, @RNKuhns, @RavenRudi, @SveaMeyer13, @TonyBagnall, @afzal442, @aiwalter, @bobbys-dev, @boukepostma, @danbartl, @eyalshafran, @fkiraly, @freddyaboulton, @kejsitake, @mloning, @myprogrammerpersonality, @patrickzib, @ronnie-llamado, @xiaobenbenecho and @yairbeer

    New Contributors

    • @ronnie-llamado made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1437
    • @bobbys-dev made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1453
    • @myprogrammerpersonality made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1464
    • @xiaobenbenecho made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1409
    • @yairbeer made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1475
    • @kejsitake made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1473
    • @boukepostma made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1493
    • @RavenRudi made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1487
    • @eyalshafran made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1489
    • @danbartl made their first contribution in https://github.com/alan-turing-institute/sktime/pull/1356
    Source code(tar.gz)
    Source code(zip)
  • v0.8.0(Sep 17, 2021)

    What's New

    Please see our changelog for a description of all changes.

    All contributors: @Aparna-Sakshi, @AreloTanoh, @BINAYKUMAR943, @Flix6x, @GuzalBulatova, @IlyasMoutawwakil, @Lovkush-A, @MatthewMiddlehurst, @RNKuhns, @SveaMeyer13, @TonyBagnall, @afzal442, @aiwalter, @bilal-196, @corvusrabus, @fkiraly, @freddyaboulton, @juanitorduz, @justinshenk, @ltoniazzi, @mathco-wf, @mloning, @moradabaz, @pul95, @tensorflow-as-tf, @thayeylolu, @victordremov, @whackteachers and @xloem

    Source code(tar.gz)
    Source code(zip)
  • v0.7.0(Jul 13, 2021)

    What's New

    Added

    • new module (experimental): Time Series Clustering (#1049) @TonyBagnall
    • new module (experimental): Pairwise transformers, kernels/distances on tabular data and panel data - base class, examples, extension templates (#1071) @fkiraly @chrisholder
    • new module (experimental): Series annotation and PyOD adapter (#1021) @fkiraly @satya-pattnaik
    • Clustering extension templates, docstrings & get_fitted_params (#1100) @fkiraly
    • New Classifier: Implementation of signature based methods. (#714) @jambo6
    • New Forecaster: Croston's method (#730) @Riyabelle25
    • New Forecaster: ForecastingPipeline for pipelining with exog data (#967) @aiwalter
    • New Transformer: Multivariate Detrending (#1042) @SveaMeyer13
    • New Transformer: ThetaLines transformer (#923) @GuzalBulatova
    • sktime registry (#1067) @fkiraly
    • Feature/information criteria get_fitted_params (#942) @ltsaprounis
    • Add plot_correlations() to plot series and acf/pacf (#850) @RNKuhns
    • Add doc-quality tests on changed files (#752) @mloning
    • Docs: Create add_dataset.rst (#970) @Riyabelle25
    • Added two new related software packages (#1019) @aiwalter
    • Added orbit as related software (#1128) @aiwalter
    • adding fkiraly as codeowner for forecasting base classes (#989) @fkiraly
    • added mloning and aiwalter as forecasting/base code owners (#1108) @fkiraly

    Changed

    • Update metric to handle y_train (#858) @RNKuhns
    • TSC base template refactor (#1026) @fkiraly
    • Forecasting refactor: base class refactor and extension template (#912) @fkiraly
    • Forecasting refactor: base/template docstring fixes, added fit_predict method (#1109) @fkiraly
    • Forecasters refactor: NaiveForecaster (#953) @fkiraly
    • Forecasters refactor: BaseGridSearch, ForecastingGridSearchCV, ForecastingRandomizedSearchCV (#1034) @GuzalBulatova
    • Forecasting refactor: polynomial trend forecaster (#1003) @thayeylolu
    • Forecasting refactor: Stacking, Multiplexer, Ensembler and TransformedTarget Forecasters (#977) @thayeylolu
    • Forecasting refactor: statsmodels and theta forecaster (#1029) @thayeylolu
    • Forecasting refactor: reducer (#1031) @Lovkush-A
    • Forecasting refactor: ensembler, online-ensembler-forecaster and descendants (#1015) @thayeylolu
    • Forecasting refactor: TbatAdapter (#1017) @thayeylolu
    • Forecasting refactor: PmdArimaAdapter (#1016) @thayeylolu
    • Forecasting refactor: Prophet (#1005) @thayeylolu
    • Forecasting refactor: CrystallBall Forecaster (#1004) @thayeylolu
    • Forecasting refactor: default tags in BaseForecaster; added some new tags (#1013) @fkiraly
    • Forecasting refactor: removing _SktimeForecaster and horizon mixins (#1088) @fkiraly
    • Forecasting tutorial rework (#972) @fkiraly
    • Added tuning tutorial to forecasting example notebook - fkiraly suggestions on top of #1047 (#1053) @fkiraly
    • Classification: Kernel based refactor (#875) @MatthewMiddlehurst
    • Classification: catch22 Remake (#864) @MatthewMiddlehurst
    • Forecasting: Remove step_length hyper-parameter from reduction classes (#900) @mloning
    • Transformers: Make OptionalPassthrough to support multivariate input (#1112) @aiwalter
    • Transformers: Improvement to Multivariate-Detrending (#1077) @SveaMeyer13
    • Update plot_series to handle pd.Int64 and pd.Range index uniformly (#892) @Dbhasin1
    • Including floating numbers as a window length (#827) @thayeylolu
    • update docs on loading data (#885) @SveaMeyer13
    • Update docs (#887) @mloning
    • [DOC] Updated docstrings to inform that methods accept ForecastingHorizon (#872) @julramos

    Fixed

    • Fix use of seasonal periodicity in naive model with mean strategy (from PR #917) (#1124) @mloning
    • Fix ForecastingPipeline import (#1118) @mloning
    • Bugfix - forecasters should use internal interface _all_tags for self-inspection, not _has_tag (#1068) @fkiraly
    • bugfix: Prophet adapter fails to clone after setting parameters (#911) @Yard1
    • Fix seeding issue in Minirocket Classifier (#1094) @Lovkush-A
    • fixing soft dependencies link (#1035) @fkiraly
    • Fix minor typos in docstrings (#889) @GuzalBulatova
    • Fix manylinux CI (#914) @mloning
    • Add limits.h to ensure pip install on certain OS's (#915) @tombh
    • Fix side effect on input for Imputer and HampelFilter (#1089) @aiwalter
    • BaseCluster class issues resolved (#1075) @chrisholder
    • Cleanup metric docstrings and fix bug in _RelativeLossMixin (#999) @RNKuhns
    • minor clarifications in forecasting extension template preamble (#1069) @fkiraly
    • Fix fh in imputer method based on in-sample forecasts (#861) @julramos
    • Arsenal fix, extended capabilities and HC1 unit tests (#902) @MatthewMiddlehurst
    • minor bugfix - setting _is_fitted to False before input checks in forecasters (#941) @fkiraly
    • Properly process random_state when fitting Time Series Forest ensemble in parallel (#819) @kachayev
    • bump nbqa (#998) @MarcoGorelli
    • datetime: Construct Timedelta from parsed pandas frequency (#873) @ckastner

    All contributors: @Dbhasin1, @GuzalBulatova, @Lovkush-A, @MarcoGorelli, @MatthewMiddlehurst, @RNKuhns, @Riyabelle25, @SveaMeyer13, @TonyBagnall, @Yard1, @aiwalter, @chrisholder, @ckastner, @fkiraly, @jambo6, @julramos, @kachayev, @ltsaprounis, @mloning, @thayeylolu and @tombh

    Source code(tar.gz)
    Source code(zip)
  • v0.6.1(May 14, 2021)

    What's New

    Fixed

    • Exclude Python 3.10 from manylinux CI (#870) @mloning
    • Fix AutoETS handling of infinite information criteria (#848) @ltsaprounis
    • Fix smape import (#851) @mloning

    Changed

    • ThetaForecaster now works with initial_level (#769) @yashlamba
    • Use joblib to parallelize ensemble fitting for Rocket classifier (#796) @kachayev
    • Update maintenance tools (#829) @mloning
    • Undo pmdarima hotfix and avoid pmdarima 1.8.1 (#831) @aaronreidsmith
    • Hotfix pmdarima version (#828) @aiwalter

    Added

    • Added Guerrero method for lambda estimation to BoxCoxTransformer (#778) (#791) @GuzalBulatova
    • New forecasting metrics (#801) @RNKuhns
    • Implementation of DirRec reduction strategy (#779) @luiszugasti
    • Added cutoff to BaseGridSearch to use any grid search inside evaluate… (#825) @aiwalter
    • Added pd.DataFrame transformation for Imputer and HampelFilter (#830) @aiwalter
    • Added default params for some transformers (#834) @aiwalter
    • Added several docstring examples (#835) @aiwalter
    • Added skip-inverse-transform tag for Imputer and HampelFilter (#788) @aiwalter
    • Added a reference to alibi-detect (#815) @satya-pattnaik

    All contributors: @GuzalBulatova, @RNKuhns, @aaronreidsmith, @aiwalter, @kachayev, @ltsaprounis, @luiszugasti, @mloning, @satya-pattnaik and @yashlamba

    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(Apr 15, 2021)

    What's New

    Fixed

    • Fix counting for Github's automatic language discovery (#812) @xuyxu
    • Fix counting for Github's automatic language discovery (#811) @xuyxu
    • Fix examples CI checks (#793) @mloning
    • Fix TimeSeriesForestRegressor (#777) @mloning
    • Fix Deseasonalizer docstring (#737) @mloning
    • SettingWithCopyWarning in Prophet with exogenous data (#735) @jschemm
    • Correct docstrings for check_X and related functions (#701) @Lovkush-A
    • Fixed bugs mentioned in #694 (#697) @AidenRushbrooke
    • fix typo in CONTRIBUTING.md (#688) @luiszugasti
    • Fix duplicacy in the contribution's list (#685) @afzal442
    • HIVE-COTE 1.0 fix (#678) @MatthewMiddlehurst

    Changed

    • Update sklearn version (#810) @mloning
    • Remove soft dependency check for numba (#808) @mloning
    • Modify tests for forecasting reductions (#756) @Lovkush-A
    • Upgrade nbqa (#794) @MarcoGorelli
    • Enhanced exception message of splitters (#771) @aiwalter
    • Enhance forecasting model selection/evaluation (#739) @mloning
    • Pin PyStan version (#751) @mloning
    • master to main conversion in docs folder closes #644 (#667) @ayan-biswas0412
    • Update governance (#686) @mloning
    • remove MSM from unit tests for now (#698) @TonyBagnall
    • Make update_params=true by default (#660) @pabworks
    • update dataset names (#676) @TonyBagnall

    Added

    • Add support for exogenous variables to forecasting reduction (#757) @mloning
    • Added forecasting docstring examples (#772) @aiwalter
    • Added the agg argument to EnsembleForecaster (#774) @Ifeanyi30
    • Added OptionalPassthrough transformer (#762) @aiwalter
    • Add doctests (#766) @mloning
    • Multiplexer forecaster (#715) @koralturkk
    • Upload source tarball to PyPI during releases (#749) @dsherry
    • Create developer guide (#734) @mloning
    • Refactor TSF classifier into TSF regressor (#693) @luiszugasti
    • Outlier detection with HampelFilter (#708) @aiwalter
    • changes to contributing.md to include directions to installation (#695) @kanand77
    • Evaluate (example and fix) (#690) @aiwalter
    • Knn unit tests (#705) @TonyBagnall
    • Knn transpose fix (#689) @TonyBagnall
    • Evaluate forecaster function (#657) @aiwalter
    • Multioutput reduction strategy for forecasting (#659) @Lovkush-A

    All contributors: @AidenRushbrooke, @Ifeanyi30, @Lovkush-A, @MarcoGorelli, @MatthewMiddlehurst, @TonyBagnall, @afzal442, @aiwalter, @ayan-biswas0412, @dsherry, @jschemm, @kanand77, @koralturkk, @luiszugasti, @mloning, @pabworks and @xuyxu

    Source code(tar.gz)
    Source code(zip)
  • v0.5.3(Feb 6, 2021)

    What's New

    Fixed

    • Fix reduced regression forecaster reference (#658) @mloning
    • Address Bug #640 (#642) @patrickzib
    • Ed knn (#638) @TonyBagnall
    • Euclidean distance for KNNs (#636) @goastler

    Changed

    • Pin NumPy 1.19 (#643) @mloning
    • Update CoC committee (#614) @mloning
    • Benchmarking issue141 (#492) @ViktorKaz
    • Catch22 Refactor & Multithreading (#615) @MatthewMiddlehurst

    Added

    • Create new factory method for forecasting via reduction (#635) @Lovkush-A
    • Feature ForecastingRandomizedSearchCV (#634) @pabworks
    • Added Imputer for missing values (#637) @aiwalter
    • Add expanding window splitter (#627) @koralturkk
    • Forecasting User Guide (#595) @Lovkush-A
    • Add data processing functionality to convert between data formats (#553) @RNKuhns
    • Add basic parallel support for ElasticEnsemble (#546) @xuyxu

    All contributors: @Lovkush-A, @MatthewMiddlehurst, @RNKuhns, @TonyBagnall, @ViktorKaz, @aiwalter, @goastler, @koralturkk, @mloning, @pabworks, @patrickzib and @xuyxu

    Source code(tar.gz)
    Source code(zip)
  • v0.5.2(Jan 13, 2021)

    What's New

    Fixed

    • Fix ModuleNotFoundError issue (#613) @Hephaest
    • Fixes _fit(X) in KNN (#610) @TonyBagnall
    • UEA TSC module improvements 2 (#599) @TonyBagnall
    • Fix sktime.classification.frequency_based not found error (#606) @Hephaest
    • UEA TSC module improvements 1 (#579) @TonyBagnall
    • Relax numba pinning (#593) @dhirschfeld
    • Fix fh.to_relative() bug for DatetimeIndex (#582) @aiwalter

    All contributors: @Hephaest, @MatthewMiddlehurst, @TonyBagnall, @aiwalter and @dhirschfeld

    Source code(tar.gz)
    Source code(zip)
  • v0.5.1(Dec 29, 2020)

    What's New

    Added

    • Add ARIMA (#559) @HYang1996
    • Add fbprophet wrapper (#515) @aiwalter
    • Add MiniRocket and MiniRocketMultivariate (#542) @angus924
    • Add Cosine, ACF and PACF transformers (#509) @afzal442
    • Add example notebook Window Splitters (#555) @juanitorduz
    • Add SlidingWindowSplitter visualization on doctrings (#554) @juanitorduz

    Fixed

    • Pin pandas version to fix pandas-related AutoETS error on Linux (#581) @mloning
    • Fixed default argument in docstring in SlidingWindowSplitter (#556) @ngupta23

    All contributors: @HYang1996, @TonyBagnall, @afzal442, @aiwalter, @angus924, @juanitorduz, @mloning and @ngupta23

    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(Dec 19, 2020)

    What's New

    Added

    • Add tests for forecasting with exogenous variables (#547) @mloning
    • Add HCrystalBall wrapper (#485) @MichalChromcak
    • Tbats (#527) @aiwalter
    • Added matrix profile using stumpy (#471) @utsavcoding
    • User guide (#377) @mloning
    • Add GitHub workflow for building and testing on macOS (#505) @mloning
    • [DOC] Add dtaidistance (#502) @mloning
    • Implement the feature_importances_ property for RISE (#497) @AaronX121
    • Add scikit-fda to the list of related software (#495) @vnmabus
    • [DOC] Add roadmap to docs (#467) @mloning
    • Add parallelization for RandomIntervalSpectralForest (#482) @AaronX121
    • New Ensemble Forecasting Methods (#333) @magittan
    • CI run black formatter on notebooks as well as Python scripts (#437) @MarcoGorelli
    • Implementation of catch22 transformer, CIF classifier and dictionary based clean-up (#453) @MatthewMiddlehurst
    • Added write dataset to ts file functionality (#438) @whackteachers
    • Added ability to load from csv containing long-formatted data (#442) @AidenRushbrooke
    • Transform typing (#420) @mloning

    Changed

    • Refactoring utils and transformer module (#538) @mloning
    • Update README (#454) @mloning
    • Clean up example notebooks (#548) @mloning
    • Update README.rst (#536) @aiwalter
    • [Doc]Updated load_data.py (#496) @Afzal-Ind
    • Update forecasting.py (#487) @raishubham1
    • update basic motion description (#475) @vollmersj
    • [DOC] Update docs in benchmarking/data.py (#489) @Afzal-Ind
    • Edit Jupyter Notebook 01_forecasting (#486) @bmurdata
    • Feature & Performance improvements of SFA/WEASEL (#457) @patrickzib
    • Moved related software from wiki to docs (#439) @mloning

    Fixed

    • Fixed issue outlined in issue 522 (#537) @ngupta23
    • Fix plot-series (#533) @gracewgao
    • added mape_loss and cosmetic fixes to notebooks (removed kernel) (#500) @tch
    • Fix azure pipelines (#506) @mloning
    • [DOC] Fix broken docstrings of RandomIntervalSpectralForest (#473) @AaronX121
    • Add back missing bibtex reference to classifiers (#468) @whackteachers
    • Avoid seaborn warning (#472) @davidbp
    • Bump pre-commit versions, run again on notebooks (#469) @MarcoGorelli
    • Fix series validation (#463) @mloning
    • Fix soft dependency imports (#446) @mloning
    • Fix bug in AutoETS (#445) @HYang1996
    • Add ForecastingHorizon class to docs (#444) @mloning

    Removed

    • Remove manylinux1 (#458) @mloning

    All contributors: @AaronX121, @Afzal-Ind, @AidenRushbrooke, @HYang1996, @MarcoGorelli, @MatthewMiddlehurst, @MichalChromcak, @TonyBagnall, @aiwalter, @bmurdata, @davidbp, @gracewgao, @magittan, @mloning, @ngupta23, @patrickzib, @raishubham1, @tch, @utsavcoding, @vnmabus, @vollmersj and @whackteachers

    Source code(tar.gz)
    Source code(zip)
  • v0.4.3(Oct 20, 2020)

    What's New

    Added

    • Support for 3d numpy array (#405) @mloning
    • Support for downloading dataset from UCR UEA time series classification data set repository (#430) @Emiliathewolf
    • Univariate time series regression example to TSFresh notebook (#428) @evanmiller29
    • Parallelized TimeSeriesForest using joblib. (#408) @kkoziara
    • Unit test for multi-processing (#414) @kkoziara
    • Add date-time support for forecasting framework (#392) @mloning

    Changed

    • Performance improvements of dictionary classifiers (#398) @patrickzib

    Fixed

    • Fix links in Readthedocs and Binder launch button (#416) @mloning
    • Fixed small bug in performance metrics (#422) @krumeto
    • Resolved warnings in notebook examples (#418) @alwinw
    • Better error handling for missing soft dependencies (#410) @alwinw

    All contributors: @Emiliathewolf, @alwinw, @evanmiller29, @kkoziara, @krumeto, @mloning and @patrickzib

    Source code(tar.gz)
    Source code(zip)
  • v0.4.2(Oct 1, 2020)

    What's new

    Added

    • ETSModel with auto-fitting capability (#393) @HYang1996
    • WEASEL classifier (#391) @patrickzib
    • Full support for exogenous data in forecasting framework (#382) @mloning, (#380) @mloning
    • Multivariate dataset for US consumption over time (#385) @SebasKoel
    • Governance document (#324) @mloning, @fkiraly

    Fixed

    • Documentation fixes (#400) @brettkoonce, (#399) @akanz1, (#404) @alwinw

    Changed

    • Move documentation to ReadTheDocs with support for versioned documentation (#395) @mloning
    • Refactored SFA implementation (additional features and speed improvements) (#389) @patrickzib
    • Move prediction interval API to base classes in forecasting framework (#387) @big-o
    • Documentation improvements (#364) @mloning
    • Update CI and maintenance tools (#394) @mloning

    All contributors: @HYang1996, @SebasKoel, @fkiraly, @akanz1, @alwinw, @big-o, @brettkoonce, @mloning, @patrickzib

    Source code(tar.gz)
    Source code(zip)
  • v0.4.1(Jul 9, 2020)

    What's new:

    Added

    • TemporalDictionaryEnsemble (#292) @MatthewMiddlehurst
    • ShapeDTW (#287) @Multivin12
    • Updated sktime artwork (logo) @mloning
    • Truncation transformer (#315) @ABostrom
    • Padding transformer (#316) @ABostrom
    • Example notebook with feature importance graph for time series forest (#319) @HYang1996
    • ACSF1 data set (#314) @BandaSaiTejaReddy
    • Data conversion function from 3d numpy array to nested pandas dataframe (#304) @vedazeren

    Changed

    • Replaced gunpoint dataset in tutorials, added OSULeaf dataset (#295) @marielledado
    • Updated macOS advanced install instructions (#306) (#308) @sophijka
    • Updated contributing guidelines (#301) @Ayushmaanseth

    Fixed

    • Typos (#293) @Mo-Saif, (#285) @Pangoraw, (#305) @hiqbal2
    • Manylinux wheel building (#286) @mloning
    • KNN compatibility with sklearn (#310) @Cheukting
    • Docstrings for AutoARIMA (#307) @btrtts

    All contributors: @Ayushmaanseth, @Mo-Saif, @Pangoraw, @marielledado, @mloning, @sophijka, @Cheukting, @MatthewMiddlehurst, @Multivin12, @ABostrom, @HYang1996, @BandaSaiTejaReddy, @vedazeren, @hiqbal2, @btrtts

    Source code(tar.gz)
    Source code(zip)
Owner
The Alan Turing Institute
The UK's national institute for data science and artificial intelligence.
The Alan Turing Institute
Merlion: A Machine Learning Framework for Time Series Intelligence

Merlion is a Python library for time series intelligence. It provides an end-to-end machine learning framework that includes loading and transforming data, building and training models, post-processing model outputs, and evaluating model performance. I

Salesforce 2.8k Jan 5, 2023
A data preprocessing package for time series data. Design for machine learning and deep learning.

A data preprocessing package for time series data. Design for machine learning and deep learning.

Allen Chiang 152 Jan 7, 2023
A machine learning toolkit dedicated to time-series data

tslearn The machine learning toolkit for time series analysis in Python Section Description Installation Installing the dependencies and tslearn Getti

null 2.3k Jan 5, 2023
A machine learning toolkit dedicated to time-series data

tslearn The machine learning toolkit for time series analysis in Python Section Description Installation Installing the dependencies and tslearn Getti

null 2.3k Dec 29, 2022
Python module for machine learning time series:

seglearn Seglearn is a python package for machine learning time series or sequences. It provides an integrated pipeline for segmentation, feature extr

David Burns 536 Dec 29, 2022
ETNA is an easy-to-use time series forecasting framework.

ETNA is an easy-to-use time series forecasting framework. It includes built in toolkits for time series preprocessing, feature generation, a variety of predictive models with unified interface - from classic machine learning to SOTA neural networks, models combination methods and smart backtesting. ETNA is designed to make working with time series simple, productive, and fun.

Tinkoff.AI 674 Jan 7, 2023
ETNA – time series forecasting framework

ETNA Time Series Library Predict your time series the easiest way Homepage | Documentation | Tutorials | Contribution Guide | Release Notes ETNA is an

Tinkoff.AI 675 Jan 8, 2023
A Python implementation of GRAIL, a generic framework to learn compact time series representations.

GRAIL A Python implementation of GRAIL, a generic framework to learn compact time series representations. Requirements Python 3.6+ numpy scipy tslearn

null 3 Nov 24, 2021
Examples and code for the Practical Machine Learning workshop series

Practical Machine Learning Workshop Series Practical Machine Learning for Quantitative Finance Post conference workshop at the WBS Spring Conference D

CompatibL 21 Jun 25, 2022
Tool for producing high quality forecasts for time series data that has multiple seasonality with linear or non-linear growth.

Prophet: Automatic Forecasting Procedure Prophet is a procedure for forecasting time series data based on an additive model where non-linear trends ar

Facebook 15.4k Jan 7, 2023
Open source time series library for Python

PyFlux PyFlux is an open source time series library for Python. The library has a good array of modern time series models, as well as a flexible array

Ross Taylor 2k Jan 2, 2023
Automatic extraction of relevant features from time series:

tsfresh This repository contains the TSFRESH python package. The abbreviation stands for "Time Series Feature extraction based on scalable hypothesis

Blue Yonder GmbH 7k Jan 6, 2023
A statistical library designed to fill the void in Python's time series analysis capabilities, including the equivalent of R's auto.arima function.

pmdarima Pmdarima (originally pyramid-arima, for the anagram of 'py' + 'arima') is a statistical library designed to fill the void in Python's time se

alkaline-ml 1.3k Dec 22, 2022
Probabilistic time series modeling in Python

GluonTS - Probabilistic Time Series Modeling in Python GluonTS is a Python toolkit for probabilistic time series modeling, built around Apache MXNet (

Amazon Web Services - Labs 3.3k Jan 3, 2023
A python library for easy manipulation and forecasting of time series.

Time Series Made Easy in Python darts is a python library for easy manipulation and forecasting of time series. It contains a variety of models, from

Unit8 5.2k Jan 4, 2023
STUMPY is a powerful and scalable Python library for computing a Matrix Profile, which can be used for a variety of time series data mining tasks

STUMPY STUMPY is a powerful and scalable library that efficiently computes something called the matrix profile, which can be used for a variety of tim

TD Ameritrade 2.5k Jan 6, 2023
A Python package for time series classification

pyts: a Python package for time series classification pyts is a Python package for time series classification. It aims to make time series classificat

Johann Faouzi 1.4k Jan 1, 2023
Time series forecasting with PyTorch

Our article on Towards Data Science introduces the package and provides background information. Pytorch Forecasting aims to ease state-of-the-art time

Jan Beitner 2.5k Jan 2, 2023
Automatically build ARIMA, SARIMAX, VAR, FB Prophet and XGBoost Models on Time Series data sets with a Single Line of Code. Now updated with Dask to handle millions of rows.

Auto_TS: Auto_TimeSeries Automatically build multiple Time Series models using a Single Line of Code. Now updated with Dask. Auto_timeseries is a comp

AutoViz and Auto_ViML 519 Jan 3, 2023