FLIRT is a feature generation toolkit for wearable data such as that from your smartwatch or smart ring. With FLIRT you can easily transform wearable data into meaningful features which can then be used for example in machine learning or AI models.
In contrast to other existing toolkits, FLIRT (1) focuses on physiological data recorded with (consumer) wearables and (2) calculates features based on a sliding-window approach. FLIRT is an easy-to-use, robust and efficient feature generation toolkit for your wearable device!

FLIRT workflow
Main Features
A few things that FLIRT can do:
- Loading data from common wearable device formats such as from the Empatica E4 or Holter ECGs
- Overlapping sliding-window approach for feature calculation
- Calculating HRV (heart-rate variability) features from NN intervals (aka inter-beat intervals)
- Deriving features for EDA (electrodermal activity)
- Computing features for ACC (accelerometer)
- Provide and prepare features in one comprehensive DataFrame, so that they can directly be used for further steps (e.g. training machine learning models)
😎 FLIRT provides high-level implementations for fast and easy utilization of feature generators (see flirt.simple).
🤓 For advanced users, who wish to adapt algorithms and parameters do their needs, FLIRT also provides low-level implementations. They allow for extensive configuration possibilities in feature generation and the specification of which algorithms to use for generating features.
💻 Learn more and access the source code on GitHub.
Citation
Föll, S., Maritsch, M., Spinola, F., Barata, F., Kowatsch, T., Mishra, V., Fleisch, E., Wortmann, F. 2021. FLIRT: A Feature Generation Toolkit for Wearable Data. Computer Methods and Programs in Biomedicine, 212. https://doi.org/10.1016/j.cmpb.2021.106461