Book Image

Python Feature Engineering Cookbook - Second Edition

By : Soledad Galli
Book Image

Python Feature Engineering Cookbook - Second Edition

By: Soledad Galli

Overview of this book

Feature engineering, the process of transforming variables and creating features, albeit time-consuming, ensures that your machine learning models perform seamlessly. This second edition of Python Feature Engineering Cookbook will take the struggle out of feature engineering by showing you how to use open source Python libraries to accelerate the process via a plethora of practical, hands-on recipes. This updated edition begins by addressing fundamental data challenges such as missing data and categorical values, before moving on to strategies for dealing with skewed distributions and outliers. The concluding chapters show you how to develop new features from various types of data, including text, time series, and relational databases. With the help of numerous open source Python libraries, you'll learn how to implement each feature engineering method in a performant, reproducible, and elegant manner. By the end of this Python book, you will have the tools and expertise needed to confidently build end-to-end and reproducible feature engineering pipelines that can be deployed into production.
Table of Contents (14 chapters)

Extracting features automatically from a time series

Time series are data points indexed in time order. Based on a time series sequence, we can predict several things. For example, we can predict whether a pipeline will fail, a music genre, whether a person is sick, or, as we will do in this recipe, whether an office is occupied.

To train regression or classification models with traditional machine learning algorithms, we require a dataset of size M x N, where M is the number of rows and N is the number of features or columns. However, with time series data, what we have is a collection of M time series. And each time series has multiple rows indexed in time. To use time series in supervised learning models, each time series needs to be mapped into a well-defined feature vector, N, as shown in the following diagram:

Figure 10.1 – Diagram showing the process of feature creation from a time series for classification or regression

These feature vectors...