stumpy
A powerful and scalable library that can be used for a variety of time series data mining tasks
Decision gist · record as of 2026-08-14
Yes. STUMPY is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively. It fills a specific and well-defined niche in time series analysis. Install it if you need matrix profile computation or the downstream mining tasks it enables; skip it if your time series work is limited to forecasting or simple statistics.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Numba JIT compilation on first call may take several seconds; ensure numpy and scipy are installed alongside stumpy.
- Low friction install with pure Python wheels.
- Active maintenance with recent commits and a solid user base (4143 stars).
License · maintenance · safety
BSD-3-Clause (permissive) — BSD-3-Clause is permissive; you can use STUMPY in commercial and proprietary projects with minimal restrictions, provided you include the license text.
last release 2026-02-08 (187 days) · last repo commit 2026-08-14 · 4,143 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 476,268 downloads/mo, #6,449 on PyPI
Alternatives
Verify before relying
import stumpy
import numpy as np
your_time_series = np.random.rand(10000)
window_size = 50
matrix_profile = stumpy.stump(your_time_series, m=window_size)- Whether GPU support (gpu_stump) requires CUDA toolkit installation or if Numba's CUDA dependencies are automatically resolved.
- Performance characteristics on very long time series (millions of points) compared to approximate methods.
- Whether distributed (stumped, mstumped) functions require Dask to be pre-installed or if they are optional.
What it is and what it does
STUMPY is a Python library for computing matrix profiles, a foundational data structure that identifies the nearest neighbor of every subsequence in a time series. Once computed, the matrix profile unlocks a range of time series analysis tasks: discovering repeated patterns (motifs), finding anomalies (discords), performing semantic segmentation, and extracting time series chains. The library is built on numpy, scipy, and numba; numba's JIT compilation provides the speed needed to handle large datasets efficiently. STUMPY offers multiple entry points: stump for single-dimensional data, mstump for multi-dimensional data, gpu_stump for GPU acceleration, and stumped/mstumped for distributed computation via Dask.
The package is designed for researchers, data scientists, and developers working with time series. It supports modern Python versions (3.10+) and runs on Linux, macOS, and Windows. The API is straightforward—typically a single function call with a time series and a window size parameter—and the library is actively maintained with comprehensive documentation and tutorials.
Use it for
- Discover repeated patterns (motifs) in long time series to identify recurring behaviors or cycles.
- Detect anomalies and outliers by finding subsequences with no close neighbors in the time series.
- Segment time series into distinct regimes or states using semantic segmentation (FLUSS).
- Analyze multi-dimensional time series (e.g., sensor arrays) to find correlated patterns across dimensions.
- Accelerate matrix profile computation on large datasets using GPU or distributed Dask clusters.
- Extract time series chains to understand temporally ordered sequences of repeating patterns.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
STUMPY is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively. It fills a specific and well-defined niche in time series analysis. Install it if you need matrix profile computation or the downstream mining tasks it enables; skip it if your time series work is limited to forecasting or simple statistics.
Install
stumpy on PyPI
Before you install
Low friction install with pure Python wheels. Active maintenance with recent commits and a solid user base (4143 stars). Requires numpy, scipy, and numba; numba's JIT compilation adds a small first-run overhead but enables the performance gains STUMPY is designed for.
Numba JIT compilation on first call may take several seconds; ensure numpy and scipy are installed alongside stumpy.
License in practice
BSD-3-Clause is permissive; you can use STUMPY in commercial and proprietary projects with minimal restrictions, provided you include the license text.
Quickstart
import stumpy
import numpy as np
your_time_series = np.random.rand(10000)
window_size = 50
matrix_profile = stumpy.stump(your_time_series, m=window_size)
Verify before relying
- Whether GPU support (gpu_stump) requires CUDA toolkit installation or if Numba's CUDA dependencies are automatically resolved.
- Performance characteristics on very long time series (millions of points) compared to approximate methods.
- Whether distributed (stumped, mstumped) functions require Dask to be pre-installed or if they are optional.
Package facts
| License | BSD-3-Clause permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagesnumpyscipynumba |
| Maintenance | Actively maintained 187 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 476,268 / month, #6,449 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaIntended Audience :: DevelopersIntended Audience :: Science/ResearchOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Topic :: Scientific/EngineeringTopic :: Software Development |
Evidence: stumpy-1.14.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “matrix profile computation”
- stumpySTUMPY computes the matrix profile for time series data, enabling…
- linear-operatorLinearOperator abstracts structured matrix operations in PyTorch,…
- tabmatProvides efficient matrix classes for tabular data that mix dense,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Software Development packages
Provides backported and experimental type hints for Python 3.9+, allowing use of newer typing features on older Python versions and enabling early experimentation with type system PEPs before they enter the standard library.
NumPy provides an N-dimensional array object and a comprehensive suite of mathematical, linear algebra, Fourier transform, and random number functions for scientific computing in Python.
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Distlib provides low-level packaging utilities for building, distributing, and managing Python software—including metadata handling, version specifiers, wheel support, script installation, and dependency resolution.
See also pygrinder · pypots · pyts · lttb · dtaidistance · time-aware-imputer · sktime · darts · ruptures · tsdownsample