Python Data Cleaning Cookbook: Modern techniques and Python tools to detect and remove dirty data and extract key insights

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Discover how to describe your data in detail, identify data issues, and find out how to solve them using commonly used techniques and tips and tricks Key Features • Get well-versed with various data cleaning techniques to reveal key insights • Manipulate data of different complexities to shape them into the right form as per your business needs • Clean, monitor, and validate large data volumes to diagnose problems before moving on to data analysis Book Description Getting clean data to reveal insights is essential, as directly jumping into data analysis without proper data cleaning may lead to incorrect results. This book shows you tools and techniques that you can apply to clean and handle data with Python. You'll begin by getting familiar with the shape of data by using practices that can be deployed routinely with most data sources. Then, the book teaches you how to manipulate data to get it into a useful form. You'll also learn how to filter and summarize data to gain insights and better understand what makes sense and what does not, along with discovering how to operate on data to address the issues you've identified. Moving on, you'll perform key tasks, such as handling missing values, validating errors, removing duplicate data, monitoring high volumes of data, and handling outliers and invalid dates. Next, you'll cover recipes on using supervised learning and Naive Bayes analysis to identify unexpected values and classification errors, and generate visualizations for exploratory data analysis (EDA) to visualize unexpected values. Finally, you'll build functions and classes that you can reuse without modification when you have new data. By the end of this Python book, you'll be equipped with all the key skills that you need to clean data and diagnose problems within it. What you will learn • Find out how to read and analyze data from a variety of sources • Produce summaries of the attributes of data frames, columns, and rows • Filter data and select columns of interest that satisfy given criteria • Address messy data issues, including working with dates and missing values • Improve your productivity in Python pandas by using method chaining • Use visualizations to gain additional insights and identify potential data issues • Enhance your ability to learn what is going on in your data • Build user-defined functions and classes to automate data cleaning Who this book is for This book is for anyone looking for ways to handle messy, duplicate, and poor data using different Python tools and techniques. The book takes a recipe-based approach to help you to learn how to clean and manage data. Working knowledge of Python programming is all you need to get the most out of the book. About the Author Michael Walker has worked as a data analyst for over 30 years at a variety of educational institutions. He has also taught data science, research methods, statistics, and computer programming to undergraduates since 2006. He generates public sector and foundation reports and conducts analyses for publication in academic journals.

Author(s): Michael Walker
Edition: 1
Publisher: Packt Publishing
Year: 2020

Language: English
Commentary: Vector PDF
Pages: 436
City: Birmingham, UK
Tags: Machine Learning; Python; Data Visualization; SQL; Statistics; JSON; Data Aggregation; Excel; Linear Regression; CSV; Data Cleaning; NumPy; pandas; Automation; Time Series Analysis; Data Exploration

Cover
Copyright
About Packt
Contributors
Table of Contents
Preface
Chapter 1: Anticipating Data Cleaning Issues when Importing Tabular Data into Pandas
Technical requirements
Importing CSV files
Getting ready
How to do it…
How it works...
There's more...
See also
Importing Excel files
Getting ready
How to do it…
How it works…
There's more…
See also
Importing data from SQL databases
Getting ready
How to do it...
How it works…
There's more…
See also
Importing SPSS, Stata, and SAS data
Getting ready
How to do it...
How it works...
There's more…
See also
Importing R data
Getting ready
How to do it…
How it works…
There's more…
See also
Persisting tabular data
Getting ready
How to do it…
How it works...
There's more...
Chapter 2: Anticipating Data Cleaning Issues when Importing HTML and JSON into pandas
Technical requirements
Importing simple JSON data
Getting ready
How to do it…
How it works…
There's more…
Importing more complicated JSON data from an API
Getting ready
How to do it...
How it works…
There's more…
See also
Importing data from web pages
Getting ready
How to do it…
How it works…
There's more…
Persisting JSON data
Getting ready
How to do it...
How it works…
There's more…
Chapter 3: Taking the Measure of Your Data
Technical requirements
Getting a first look at your data
Getting ready…
How to do it...
How it works…
There's more...
See also
Selecting and organizing columns
Getting ready…
How to do it…
How it works…
There's more…
See also
Selecting rows
Getting ready...
How to do it...
How it works…
There's more…
See also
Generating frequencies for categorical variables
Getting ready…
How to do it…
How it works…
There's more…
Generating summary statistics for continuous variables
Getting ready…
How to do it…
How it works…
See also
Chapter 4: Identifying Missing Values and Outliers in Subsets of Data
Technical requirements
Finding missing values
Getting ready
How to do it…
How it works...
See also
Identifying outliers with one variable
Getting ready
How to do it...
How it works…
There's more…
See also
Identifying outliers and unexpected values in bivariate relationships
Getting ready
How to do it...
How it works…
There's more…
See also
Using subsetting to examine logical inconsistencies in variable relationships
Getting ready
How to do it…
How it works…
See also
Using linear regression to identify data points with significant influence
Getting ready
How to do it…
How it works...
There's more…
Using k-nearest neighbor to find outliers
Getting ready
How to do it…
How it works...
There's more...
See also
Using Isolation Forest to find anomalies
Getting ready
How to do it...
How it works…
There's more…
See also
Chapter 5: Using Visualizations for the Identification of Unexpected Values
Technical requirements
Using histograms to examine the distribution of continuous variables
Getting ready
How to do it…
How it works…
There's more...
Using boxplots to identify outliers for continuous variables
Getting ready
How to do it…
How it works...
There's more...
See also
Using grouped boxplots to uncover unexpected values in a particular group
Getting ready
How to do it...
How it works...
There's more…
See also
Examining both the distribution shape and outliers with violin plots
Getting ready
How to do it…
How it works…
There's more…
See also
Using scatter plots to view bivariate relationships
Getting ready
How to do it...
How it works…
There's more...
See also
Using line plots to examine trends in continuous variables
Getting ready
How to do it…
How it works...
There's more…
See also
Generating a heat map based on a correlation matrix
Getting ready
How to do it…
How it works…
There's more…
See also
Chapter 6: Cleaning and Exploring Data with Series Operations
Technical requirements
Getting values from a pandas series
Getting ready
How to do it…
How it works...
Showing summary statistics for a pandas series
Getting ready
How to do it...
How it works…
There's more…
See also
Changing series values
Getting ready
How to do it…
How it works…
There's more…
See also
Changing series values conditionally
Getting ready
How to do it…
How it works…
There's more…
See also
Evaluating and cleaning string series data
Getting ready
How to do it...
How it works...
There's more…
Working with dates
Getting ready
How to do it…
How it works…
See also
Identifying and cleaning missing data
Getting ready
How to do it…
How it works…
There's more...
See also
Missing value imputation with K-nearest neighbor
Getting ready
How to do it…
How it works…
There's more...
See also
Chapter 7: Fixing Messy Data when Aggregating
Technical requirements
Looping through data with itertuples (an anti-pattern)
Getting ready
How to do it…
How it works...
There's more...
Calculating summaries by group with NumPy arrays
Getting ready
How to do it…
How it works…
There's more…
See also
Using groupby to organize data by groups
Getting ready
How to do it…
How it works...
There's more...
Using more complicated aggregation functions with groupby
Getting ready
How to do it…
How it works…
There's more…
See also
Using user-defined functions and apply with groupby
Getting ready
How to do it…
How it works...
There's more...
See also
Using groupby to change the unit of analysis of a DataFrame
Getting ready
How to do it...
How it works…
Chapter 8: Addressing Data Issues When Combining DataFrames
Technical requirements
Combining DataFrames vertically
Getting ready
How to do it…
How it works...
See also
Doing one-to-one merges
Getting ready
How to do it...
How it works...
There's more...
Using multiple merge-by columns
Getting ready
How to do it...
How it works...
There's more...
Doing one-to-many merges
Getting ready
How to do it…
How it works...
There's more…
See also
Doing many-to-many merges
Getting ready
How to do it...
How it works...
There's more...
Developing a merge routine
Getting ready
How to do it…
How it works...
See also
Chapter 9: Tidying and Reshaping Data
Technical requirements
Removing duplicated rows
Getting ready...
How to do it…
How it works...
There's more...
See also...
Fixing many-to-many relationships
Getting ready...
How to do it…
How it works...
There's more...
See also...
Using stack and melt to reshape data from wide to long format
Getting ready...
How to do it…
How it works...
Melting multiple groups of columns
Getting ready...
How to do it…
How it works...
There's more...
Using unstack and pivot to reshape data from long to wide
Getting ready...
How to do it…
How it works...
Chapter 10: User-Defined Functions and Classes to Automate Data Cleaning
Technical requirements
Functions for getting a first look at our data
Getting ready...
How to do it...
How it works...
There's more...
Functions for displaying summary statistics and frequencies
Getting ready
How to do it...
How it works...
There's more...
See also...
Functions for identifying outliers and unexpected values
Getting ready
How to do it...
How it works...
There's more...
See also
Functions for aggregating or combining data
Getting ready
How to do it...
How it works...
There's more...
See also
Classes that contain the logic for updating series values
Getting ready
How to do it...
How it works...
There's more...
See also
Classes that handle non-tabular data structures
Getting ready
How to do it...
How it works...
There's more...
Other Books You May Enjoy
Index