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)

Embedding feature creation in a scikit-learn pipeline

Throughout this chapter, we discussed how to automatically create and select features from time series data by utilizing tsfresh. Then, we used these features to train a classification model to predict whether an office was occupied at any given hour.

The tsfresh library offers wrapper classes around its main functions, extract_features and extract_relevant_features, to make features that have been created from time series compatible with the scikit-learn pipeline.

In this recipe, we will line up the process of creating features with tsfresh and training a logistic regression model in a scikit-learn pipeline.

How to do it...

Let’s begin by importing the necessary libraries and getting the dataset ready:

  1. Let’s import the required libraries and functions:
    import pandas as pd
    from sklearn.pipeline import Pipeline
    from sklearn.linear_model import LogisticRegression
    from sklearn.model_selection import...