Automatic extraction of relevant features from time series:

License: MIT

Language: Jupyter Notebook

Keywords: data-science, feature-extraction, time-series

Documentation Status Build Status Coverage Status license Gitter chat py27 status py352 status Binder Downloads


This repository contains the TSFRESH python package. The abbreviation stands for

"Time Series Feature extraction based on scalable hypothesis tests".

The package contains many feature extraction methods and a robust feature selection algorithm.

Spend less time on feature engineering

Data Scientists often spend most of their time either cleaning data or building features. While we cannot change the first thing, the second can be automated. TSFRESH frees your time spent on building features by extracting them automatically. Hence, you have more time to study the newest deep learning paper, read hacker news or build better models.

Automatic extraction of 100s of features

TSFRESH automatically extracts 100s of features from time series. Those features describe basic characteristics of the time series such as the number of peaks, the average or maximal value or more complex features such as the time reversal symmetry statistic.

The features extracted from a exemplary time series

The set of features can then be used to construct statistical or machine learning models on the time series to be used for example in regression or classification tasks.

Forget irrelevant features

Time series often contain noise, redundancies or irrelevant information. As a result most of the extracted features will not be useful for the machine learning task at hand.

To avoid extracting irrelevant features, the TSFRESH package has a built-in filtering procedure. This filtering procedure evaluates the explaining power and importance of each characteristic for the regression or classification tasks at hand.

It is based on the well developed theory of hypothesis testing and uses a multiple test procedure. As a result the filtering process mathematically controls the percentage of irrelevant extracted features.

The TSFRESH package is described in the following open access paper

  • Christ, M., Braun, N., Neuffer, J. and Kempa-Liehr A.W. (2018). Time Series FeatuRe Extraction on basis of Scalable Hypothesis tests (tsfresh -- A Python package). Neurocomputing 307 (2018) 72-77, doi:10.1016/j.neucom.2018.03.067.

The FRESH algorithm is described in the following whitepaper

  • Christ, M., Kempa-Liehr, A.W. and Feindt, M. (2017).
    Distributed and parallel time series feature extraction for industrial big data applications.
    ArXiv e-print 1610.07717,

Advantages of tsfresh

TSFRESH has several selling points, for example

  1. it is field tested
  2. it is unit tested
  3. the filtering process is statistically/mathematically correct
  4. it has a comprehensive documentation
  5. it is compatible with sklearn, pandas and numpy
  6. it allows anyone to easily add their favorite features
  7. it both runs on your local machine or even on a cluster

Next steps

If you are interested in the technical workings, go to see our comprehensive Read-The-Docs documentation at

The algorithm, especially the filtering part are also described in the paper mentioned above.

If you have some questions or feedback you can find the developers in the gitter chatroom.

We appreciate any contributions, if you are interested in helping us to make TSFRESH the biggest archive of feature extraction methods in python, just head over to our How-To-Contribute instructions.


The research and development of TSFRESH was funded in part by the German Federal Ministry of Education and Research under grant number 01IS14004 (project iPRODICT).

Project Statistics

Sourcerank 11
Repository Size 6.41 MB
Stars 3,981
Forks 581
Watchers 157
Open issues 92
Dependencies 27
Contributors 45
Tags 20
Last updated
Last pushed

Top Contributors See all

Maximilian Christ Nils Braun Andreas Kempa-Liehr earthgecko Julius Neuffer Markus Frey nikhase Delyan Stephan Müller moritzgelb Thibault de Boissiere Brian Sang vin tang rwedge meer1992 Roman Yurchak George Wambold Timo Klerx Omar Trinidad Gutiérrez Méndez Dan Mazur

Packages Referencing this Repo

tsfresh extracts relevant characteristics from time series
Latest release 0.12.0 - Updated - 3.98K stars

Recent Tags See all

v0.12.0 July 09, 2019
0.11.2 February 18, 2019
v0.11.1 September 07, 2018
v0.11.0 October 14, 2017
v0.10.1 August 25, 2017
v0.10.0 August 17, 2017
v0.9.0 August 02, 2017
v0.8.1 June 21, 2017
v0.8.0 May 30, 2017
v0.7.1 April 06, 2017
v0.7.0 March 29, 2017
v0.6.0 March 05, 2017
v0.5.0 February 01, 2017
v0.4.0 December 20, 2016
v0.3.1 December 14, 2016

Interesting Forks See all

Automatic extraction of relevant features from time series:
Jupyter Notebook - MIT - Updated - 1 stars
Automatic extraction of relevant features from time series:
Jupyter Notebook - Updated - 1 stars
Automatic extraction of relevant features from time series:
Jupyter Notebook - Updated - 1 stars - 1 forks
Automatic extraction of relevant features from time series:
Python - Last pushed - 1 stars

Something wrong with this page? Make a suggestion

Last synced: 2019-07-09 11:45:37 UTC

Login to resync this repository