1642058100

This repository hosts the **TSFEL - Time Series Feature Extraction Library** python package. TSFEL assists researchers on exploratory feature extraction tasks on time series without requiring significant programming effort.

Users can interact with TSFEL using two methods:

Online

It does not requires installation as it relies on Google Colabs and a user interface provided by Google Sheets

Offline

Advanced users can take full potential of TSFEL by installing as a python package

`pip install tsfel`

TSFEL is optimized for time series and **automatically extracts over 60 different features on the statistical, temporal and spectral domains.**

**Intuitive, fast deployment and reproducible**: interactive UI for feature selection and customization**Computational complexity evaluation**: estimate the computational effort before extracting features**Comprehensive documentation**: each feature extraction method has a detailed explanation**Unit tested**: we provide unit tests for each feature**Easily extended**: adding new features is easy and we encourage you to contribute with your custom features

The code below extracts all the available features on an example dataset file.

```
import tsfel
import pandas as pd
# load dataset
df = pd.read_csv('Dataset.txt')
# Retrieves a pre-defined feature configuration file to extract all available features
cfg = tsfel.get_features_by_domain()
# Extract features
X = tsfel.time_series_features_extractor(cfg, df)
```

Features | Computational Cost |
---|---|

ECDF | 1 |

ECDF Percentile | 1 |

ECDF Percentile Count | 1 |

Histogram | 1 |

Interquartile range | 1 |

Kurtosis | 1 |

Max | 1 |

Mean | 1 |

Mean absolute deviation | 1 |

Median | 1 |

Median absolute deviation | 1 |

Min | 1 |

Root mean square | 1 |

Skewness | 1 |

Standard deviation | 1 |

Variance | 1 |

Features | Computational Cost |
---|---|

Absolute energy | 1 |

Area under the curve | 1 |

Autocorrelation | 1 |

Centroid | 1 |

Entropy | 1 |

Mean absolute diff | 1 |

Mean diff | 1 |

Median absolute diff | 1 |

Median diff | 1 |

Negative turning points | 1 |

Peak to peak distance | 1 |

Positive turning points | 1 |

Signal distance | 1 |

Slope | 1 |

Sum absolute diff | 1 |

Total energy | 1 |

Zero crossing rate | 1 |

Neighbourhood peaks | 1 |

Features | Computational Cost |
---|---|

FFT mean coefficient | 1 |

Fundamental frequency | 1 |

Human range energy | 2 |

LPCC | 1 |

MFCC | 1 |

Max power spectrum | 1 |

Maximum frequency | 1 |

Median frequency | 1 |

Power bandwidth | 1 |

Spectral centroid | 2 |

Spectral decrease | 1 |

Spectral distance | 1 |

Spectral entropy | 1 |

Spectral kurtosis | 2 |

Spectral positive turning points | 1 |

Spectral roll-off | 1 |

Spectral roll-on | 1 |

Spectral skewness | 2 |

Spectral slope | 1 |

Spectral spread | 2 |

Spectral variation | 1 |

Wavelet absolute mean | 2 |

Wavelet energy | 2 |

Wavelet standard deviation | 2 |

Wavelet entropy | 2 |

Wavelet variance | 2 |

When using TSFEL please cite the following publication:

Barandas, Marília and Folgado, Duarte, et al. "*TSFEL: Time Series Feature Extraction Library.*" SoftwareX 11 (2020). https://doi.org/10.1016/j.softx.2020.100456

We would like to acknowledge the financial support obtained from the project Total Integrated and Predictive Manufacturing System Platform for Industry 4.0, co-funded by Portugal 2020, framed under the COMPETE 2020 (Operational Programme Competitiveness and Internationalization) and European Regional Development Fund (ERDF) from European Union (EU), with operation code POCI-01-0247-FEDER-038436.

Author: Fraunhoferportugal

Source Code: https://github.com/fraunhoferportugal/tsfel

License: BSD-3-Clause License

#python #data-science #classification

1616818722

In my last post, I mentioned multiple selecting and filtering in Pandas library. I will talk about time series basics with Pandas in this post. Time series data in different fields such as finance and economy is an important data structure. The measured or observed values over time are in a time series structure. Pandas is very useful for time series analysis. There are tools that we can easily analyze.

In this article, I will explain the following topics.

- What is the time series?
- What are time series data structures?
- How to create a time series?
- What are the important methods used in time series?

Before starting the topic, our Medium page includes posts on data science, artificial intelligence, machine learning, and deep learning. Please don’t forget to follow us on ** Medium** 🌱 to see these posts and the latest posts.

Let’s get started.

#what-is-time-series #pandas #time-series-python #timeseries #time-series-data

1595685600

In this article, we will be discussing an algorithm that helps us analyze past trends and lets us focus on what is to unfold next so this algorithm is time series forecasting.

**What is Time Series Analysis?**

In this analysis, you have one variable -TIME. A time series is a set of observations taken at a specified time usually equal in intervals. It is used to predict future value based on previously observed data points.

**Here some examples where time series is used.**

- Business forecasting
- Understand the past behavior
- Plan future
- Evaluate current accomplishments.

**Components of time series :**

**Trend:**Let’s understand by example, let’s say in a new construction area someone open hardware store now while construction is going on people will buy hardware. but after completing construction buyers of hardware will be reduced. So for some times selling goes high and then low its called uptrend and downtrend.- **Seasonality: **Every year chocolate sell goes high during the end of the year due to Christmas. This same pattern happens every year while in the trend that is not the case. Seasonality is repeating same pattern at same intervals.
**Irregularity:**It is also called noise. When something unusual happens that affects the regularity, for example, there is a natural disaster once in many years lets say it is flooded so people buying medicine more in that period. This what no one predicted and you don’t know how many numbers of sales going to happen.**Cyclic:**It is basically repeating up and down movements so this means it can go more than one year so it doesn’t have fix pattern and it can happen any time and it is much harder to predict.

**Stationarity of a time series:**

A series is said to be “strictly stationary” if the marginal distribution of Y at time t[p(Yt)] is the same as at any other point in time. This implies that the mean, variance, and covariance of the series Yt are time-invariant.

However, a series said to be “weakly stationary” or “covariance stationary” if mean and variance are constant and covariance of two-point Cov(Y1, Y1+k)=Cov(Y2, Y2+k)=const, which depends only on lag k but do not depend on time explicitly.

#machine-learning #time-series-model #machine-learning-ai #time-series-forecasting #time-series-analysis

1616832900

In the last post, I talked about working with time series . In this post, I will talk about important methods in time series. Time series analysis is very frequently used in finance studies. Pandas is a very important library for time series analysis studies.

In summary, I will explain the following topics in this lesson,

- Resampling
- Shifting
- Moving Window Functions
- Time zone

Before starting the topic, our Medium page includes posts on data science, artificial intelligence, machine learning, and deep learning. Please don’t forget to follow us on ** Medium** 🌱 to see these posts and the latest posts.

Let’s get started.

#pandas-time-series #timeseries #time-series-python #time-series-analysis

1591688078

Dealing with dates and times in Python can be a hassle. Thankfully, there’s a built-in way of making it easier: the Python datetime module.

datetime helps us identify and process time-related elements like dates, hours, minutes, seconds, days of the week, months, years, etc. It offers various services like managing time zones and daylight savings time. It can work with timestamp data. It can extract the day of the week, day of the month, and other date and time formats from strings.

#data science tutorials #calendar #date #dates #datetime #intermediate #python #time #time series #times #tutorial #tutorials

1598034720

Flow Forecast is a recently created open-source framework that aims to make it easy to use state of the art machine learning models to forecast and/or classify complex temporal data. Additionally, flow-forecast natively integrates with Google Cloud Platform, Weights and Biases, Colaboratory, and other tools commonly used in industry.

**Background**

In some of my previous articles I talked about the need for accurate time series forecasts and the promise of using deep learning. Flow-Forecast was originally, created to forecast stream and river flows using variations of the transformer and baseline models. However, in the process of training the transformers I encountered several issues related to finding the right hyper-parameters and the right architecture. Therefore, it became necessary to develop a platform for trying out many configurations. Flow forecast is designed to allow you to very easily try out a number of different hyper-parameters and training options for your models. Changing a model is as simple as swapping out the model’s name in the configuration file.

Another problem I faced was how to integrate additional static datasets into the forecasts. For river flow forecasting, there was a lot of meta-data such as latitude, longitude, soil depth, elevation, slope, etc. For this, we decided to look into unsupervised methods like autoencoders for forming an embedding. This spurred the idea of creating a generic way to synthesize embedding with the temporal forecast.

**Using flow forecast**

There are a couple easy resources to use to get started with flow-forecast. I recorded a brief introduction video back in May and there are also more detailed live-coding sessions you can follow. We also have a basic tutorial notebook that you can use to get a sense of how flow-forecast works on a basic problem. Additionally, there are also a lot more detailed notebooks that we use for our core COVID-19 predictions. Finally, we also have ReadTheDocs available for in depth documentation as well as our official wiki pages.

#machine-learning #pytorch #time-series-analysis #time-series-forecasting #deep-learning #deep learning