skillfed

sktime

A unified framework for machine learning with time series

sktime v1.1.0 1.2M downloads/30d#4,251 on PyPI9,920
Permissive license BSD 3-Clause License Copyright (c) 2019 - present, The sktime developers. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided… (full text in the JSON record) Active released

What it is and what it does

sktime is a Python library that unifies multiple time series machine learning tasks under a single, scikit-learn compatible API. It provides dedicated algorithms for forecasting, time series classification, clustering, anomaly and changepoint detection, regression, and transformations, along with tools for pipelining, ensembling, and hyperparameter tuning. The library also provides interfaces to related libraries.

The package is designed for data scientists and researchers working with temporal data who want a consistent interface across different time series problems. It supports Python 3.10 through 3.14 and has seven runtime dependencies, all standard scientific Python libraries. Active development and a large community (9920 GitHub stars) suggest ongoing maintenance and feature expansion.

Use it for:

  • Build and compare multiple forecasting models using a unified API without learning different library conventions
  • Apply time series classification algorithms to multivariate sensor or financial data with scikit-learn compatible pipelines
  • Detect anomalies or changepoints in streaming or batch time series data using dedicated detection algorithms
  • Cluster time series data using distance-based or feature-based methods with consistent model interfaces
  • Combine forecasting or classification with feature transformations and hyperparameter tuning in a single pipeline

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

sktime provides a unified interface for time series machine learning tasks including forecasting, classification, clustering, anomaly detection, and regression, with scikit-learn compatible tools for model building and validation.

Yes. sktime is actively maintained, has no known vulnerabilities, low install friction, and a permissive BSD 3-Clause License. It fills a genuine gap by providing a unified interface for diverse time series tasks that would otherwise require learning multiple library APIs. Suitable for production use in forecasting, classification, and detection workflows.

Install

sktime on PyPI

pip

pip install sktime

uv

uv add sktime

poetry

poetry add sktime

Installing sktime

Before you install

Low install friction with a pure Python wheel distribution. Active maintenance with a release 17 days old and 9920 repository stars. Depends on well-established libraries: joblib, numpy, pandas, scikit-learn, and scipy.

License in practice

BSD 3-Clause License permits commercial and private use with minimal restrictions—you may use, modify, and distribute the software provided you retain copyright notices and disclaimers.

Quickstart

pip install sktime

from sktime.forecasting.naive import NaiveForecaster
forecaster = NaiveForecaster()
forecaster.fit(y_train)
y_pred = forecaster.predict(fh=[1, 2, 3])

Verify before relying

  • Whether all time series tasks (forecasting, classification, clustering, detection, regression) are equally mature or if some remain experimental
  • Performance characteristics and scalability limits for large time series datasets
  • Compatibility details with specific versions of scikit-learn and other major dependencies

Package facts

License BSD 3-Clause License Copyright (c) 2019 - present, The sktime developers. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided… (full text in the JSON record) (permissive)
Python support supports the current Python release (<3.15,>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 7 — joblib, numpy, packaging, pandas, scikit-base, scikit-learn, scipy
Maintenance actively maintained — 17 days since the last release
Last repo commit
First released
Downloads 1,186,166/month — #4,251 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: sktime-1.1.0-py3-none-any.whl

Keywords: artificial-intelligence, data-mining, data-science, forecasting, machine-learning, scikit-learn, time-series, time-series-analysis, time-series-classification, time-series-regression

Intended Audience :: DevelopersIntended Audience :: Science/ResearchLicense :: OSI Approved :: BSD LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/EngineeringTopic :: Scientific/Engineering :: Artificial IntelligenceTopic :: Software Development

Tags

time series forecastingtime series classificationtime series machine learningunified time series interfacetime series anomaly detectiontime series clusteringtime series regression
time-seriesforecastingscikit-learn-compatible

More Software Development packages