Francisco Bischoff - 20 Feb 2021

Matrix Profile for R

Overview

R Functions implementing UCR Matrix Profile Algorithm (http://www.cs.ucr.edu/~eamonn/MatrixProfile.html).

This package will keep all core functions that will allow you to use the Matrix Profile concept as a toolkit.

This package provides (almost all) algorithms to build a Matrix Profile.

The package tsmp will still be developed as “how we do data mining with Matrix Profile”, keeping all slow stuff to be handled by this optimized package.

This will not be covered here, as it is a tsmp purpose:

  • Algorithms for MOTIF search for Unidimensional and Multidimensional Matrix Profiles.
  • Algorithm for Chains search for Unidimensional Matrix Profile.
  • Algorithms for Semantic Segmentation (FLUSS) and Weakly Labeled data (SDTS).
  • Algorithm for Salient Subsections detection allowing MDS plotting.
  • Basic plotting for all outputs generated here.

You can find the current tsmp package here: https://CRAN.R-project.org/package=tsmp

Installation

# Install the released version from CRAN
install.packages("matrixprofiler")
# Or the development version from GitHub:
# install.packages("devtools")
devtools::install_github("matrix-profile-foundation/matrixprofiler") # nolint

Currently available Features

  • STAMP (single and multi-thread versions)
  • STOMP (single and multi-thread versions)
  • SCRIMP (single and multi-thread versions, not for AB-joins yet)
  • MPX (single and multi-thread versions)
  • Misc:
    • MASS v2.0
    • MASS v3.0
    • MASS extensions: UN (Unnormalized Query)
    • MASS extensions: WQ (Weighted Query)
    • MASS extensions: ABS (Absolute Query and Data)
    • Window functions like mov_mean() and others.

On Roadmap

  • STOMPi (On-line version)
  • Multivariate STOMP (mSTOMP)
  • SiMPle-Fast (Fast Similarity Matrix Profile for Music Analysis and Exploration)
  • Exact Detection of Variable Length Motifs (VALMOD) (maybe will stay on tsmp package)
  • MPdist: Matrix Profile Distance
  • MASS extensions: ADP (Approximate Distance Profile, with PAA) (maybe)
  • MASS extensions: QwG (Query with Gap)

Will stay on TSMP package

  • Time Series Chains
  • Multivariate MOTIF Search (from mSTOMP)
  • Salient Subsequences search for Multidimensional Space
  • Scalable Dictionary learning for Time Series (SDTS) prediction
  • FLUSS (Fast Low-cost Unipotent Semantic Segmentation)
  • FLOSS (Fast Low-cost On-line Unipotent Semantic Segmentation)
  • Annotation vectors (e.g., Stop-word MOTIF bias, Actionability bias)
  • FLUSS Arc Plot and SiMPle Arc Plot
  • Time Series Snippets
  • Subsetting Matrix Profiles (head(), tail(), [, etc.)

Matrix Profile Foundation

Our next step unifying the Matrix Profile implementation in several programming languages.

Visit: Matrix Profile Foundation

Benchmarks

Available at RPubs.

Package dependencies

Code of Conduct

Please note that the matrixprofiler project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.