Data Preprocessing in Data Mining: A Hands On Guide

Sadhvi Last Updated : 09 Oct, 2024
8 min read

Introduction

Data preprocessing involves preparing raw data by cleaning, organizing, and transforming it into a suitable format for analysis and modeling. It is a crucial stage in data science and data engineering endeavors, typically done prior to data analysis or machine learning.

In this article, you will learn what data preprocessing is and why it is important in data science, data mining, and machine learning. We will look at key techniques used for data preprocessing, like data cleaning, which helps fix mistakes and fill in missing information. Understanding these ideas will help you work with data more effectively.

Learning Objectives

  • Key concepts and techniques in data preprocessing.
  • Importance of data preprocessing in data mining.
  • Define and understand data cleaning, data integration, data transformation, and feature selection.
  • Implement data preprocessing in machine learning.

This article was published as a part of the Data Science Blogathon

What is Data Preprocessing?

Data preprocessing is the process of transforming raw data into an understandable format. It is also an important step in data mining as we cannot work with raw data. The quality of the data should be checked before applying machine learning or data mining algorithms.

Why is Data Preprocessing Important?

Preprocessing of data is mainly to check the data quality. The quality can be checked by the following:

  • Accuracy: To check whether the data entered is correct or not.
  • Completeness: To check whether the data is available or not recorded.
  • Consistency: To check whether the same data is kept in all the places that do or do not match.
  • Timeliness: The data should be updated correctly.
  • Believability: The data should be trustable.
  • Interpretability: The understandability of the data.

Major Tasks in Data Preprocessing

There are 4 major tasks in data preprocessing – Data cleaning, Data integration, Data reduction, and Data transformation.

Data preprocessing

                                                                         Source: medium.com

Data Cleaning

Data cleaning is the process of removing incorrect data, incomplete data, and inaccurate data from the datasets, and it also replaces the missing values. Here are some techniques for data cleaning:

Handling Missing Values

  • Standard values like “Not Available” or “NA” can be used to replace the missing values.
  • Missing values can also be filled manually, but it is not recommended when that dataset is big.
  • The attribute’s mean value can be used to replace the missing value when the data is normally distributed
    wherein in the case of non-normal distribution median value of the attribute can be used.
  • While using regression or decision tree algorithms, the missing value can be replaced by the most probable value.

Handling Noisy Data

Noisy generally means random error or containing unnecessary data points. Handling noisy data is one of the most important steps as it leads to the optimization of the model we are using Here are some of the methods to handle noisy data.

  • Binning: This method is to smooth or handle noisy data. First, the data is sorted then, and then the sorted values are separated and stored in the form of bins. There are three methods for smoothing data in the bin. Smoothing by bin mean method: In this method, the values in the bin are replaced by the mean value of the bin; Smoothing by bin median: In this method, the values in the bin are replaced by the median value; Smoothing by bin boundary: In this method, the using minimum and maximum values of the bin values are taken, and the closest boundary value replaces the values.
  • Regression: This is used to smooth the data and will help to handle data when unnecessary data is present. For the analysis, purpose regression helps to decide the variable which is suitable for our analysis.
  • Clustering: This is used for finding the outliers and also in grouping the data. Clustering is generally used in unsupervised learning.

Data Integration

The process of combining multiple sources into a single dataset. The Data integration process is one of the main components of data management. There are some problems to be considered during data integration.

  • Schema integration: Integrates metadata(a set of data that describes other data) from different sources.
  • Entity identification problem: Identifying entities from multiple databases. For example, the system or the user should know the student id of one database and studentname of another database belonging to the same entity.
  • Detecting and resolving data value concepts: The data taken from different databases while merging may differ. The attribute values from one database may differ from another database. For example, the date format may differ, like “MM/DD/YYYY” or “DD/MM/YYYY”.

Data Reduction

This process helps in the reduction of the volume of the data, which makes the analysis easier yet produces the same or almost the same result. This reduction also helps to reduce storage space. Some of the data reduction techniques are dimensionality reduction, numerosity reduction, and data compression.

  • Dimensionality reduction: This process is necessary for real-world applications as the data size is big. In this process, the reduction of random variables or attributes is done so that the dimensionality of the data set can be reduced. Combining and merging the attributes of the data without losing its original characteristics. This also helps in the reduction of storage space, and computation time is reduced. When the data is highly dimensional, a problem called the “Curse of Dimensionality” occurs.
  • Numerosity Reduction: In this method, the representation of the data is made smaller by reducing the volume. There will not be any loss of data in this reduction.
  • Data compression: The compressed form of data is called data compression. This compression can be lossless or lossy. When there is no loss of information during compression, it is called lossless compression. Whereas lossy compression reduces information, but it removes only the unnecessary information.

Data Transformation

The change made in the format or the structure of the data is called data transformation. This step can be simple or complex based on the requirements. There are some methods for data transformation.

  • Smoothing: With the help of algorithms, we can remove noise from the dataset, which helps in knowing the important features of the dataset. By smoothing, we can find even a simple change that helps in prediction.
  • Aggregation: In this method, the data is stored and presented in the form of a summary. The data set, which is from multiple sources, is integrated into with data analysis description. This is an important step since the accuracy of the data depends on the quantity and quality of the data. When the quality and the quantity of the data are good, the results are more relevant.
  • Discretization: The continuous data here is split into intervals. Discretization reduces the data size. For example, rather than specifying the class time, we can set an interval like (3 pm-5 pm, or 6 pm-8 pm).
  • Normalization: It is the method of scaling the data so that it can be represented in a smaller range. Example ranging from -1.0 to 1.0.

Data Preprocessing Steps in Machine Learning

Here is the stepwise guide to understanding data preprocessing in machine learning:

Step 1: Importing Libraries and the Dataset

Python Code:

import pandas as pd 
import numpy as np
dataset = pd.read_csv('Data.csv')
print (dataset)
dataset | Data preprocessing

Step 2: The Independent Variable

extracting independent variables | Data preprocessing

Step 3: Extracting the Dependent Variable

dependent variables |Data preprocessing

Step 4: Filling the Dataset with the Mean Value of the Attribute

from sklearn.preprocessing import Imputer  
imputer= Imputer(missing_values ='NaN', strategy='mean', axis = 0)  
imputerimputer= imputer.fit(x[:, 1:3])  
x[:, 1:3]= imputer.transform(x[:, 1:3])  
x
fillna with mean

Step 5: Encoding the Country Variable

The machine learning models use mathematical equations. So categorical data is not accepted, so we convert it into numerical form.

from sklearn.preprocessing import LabelEncoder  
label_encoder_x= LabelEncoder()  
x[:, 0]= label_encoder_x.fit_transform(x[:, 0])
encoding

Step 6: Dummy Encoding 

These dummy variables replace the categorical data as 0 and 1 in the absence or the presence of the specific categorical data.

Encoding for Purchased Variable

labelencoder_y= LabelEncoder()  
y= labelencoder_y.fit_transform(y)
Dummy encoding | Data preprocessing

Step 7: Splitting the Dataset into Training and Test Sets

 from sklearn.model_selection import train_test_split
x_train, x_test, y_train, y_test= train_test_split(x, y, test_size= 0.2, random_state=0)

Step 8: Feature Scaling

from sklearn.preprocessing import StandardScaler
st_x= StandardScaler()
x_train= st_x.fit_transform(x_train)
feature scaling
x_test= st_x.transform(x_test)

Conclusion

In conclusion, data preprocessing is an essential step in the data mining process and plays a crucial role in ensuring that the data is in a suitable format for analysis. This article provides a comprehensive guide to data preprocessing techniques, including data cleaning, integration, reduction, and transformation. Through practical examples and code snippets, the article helps readers understand the key concepts and techniques involved in data preprocessing and gives them the skills to apply these techniques to their own data mining projects. Whether you are a beginner or an experienced data miner, this article will provide valuable information and resources to help you achieve high-quality results from your data.

Take your data mining skills to the next level by enrolling in our course “How to Preprocess Data” and master the essential techniques for preparing your data for analysis.

Key Takeaways

  • The quality of data is checked based on its accuracy, completeness, consistency, timeliness, believability, and interpretability.
  • The 4 major tasks in data preprocessing are data cleaning, data integration, data reduction, and data transformation.
  • The practical examples and code snippets mentioned in this article have helped us better understand the application of data preprocessing in data mining.
Q1. What is the meaning of data cleansing?

A. Data cleansing is the process of identifying and removing errors, inconsistencies and duplicate records from a dataset. The goal is to improve the accuracy, completeness, and consistency of data. Data cleansing can involve tasks such as correcting inaccuracies, removing duplicates, and standardizing data formats. This process helps to ensure that data is reliable and trustworthy for business intelligence, analytics, and decision-making purposes.

Q2. What are the data preprocessing steps in order?

A. The steps involved in data preprocessing are: Data collection, Data cleaning, Data integration, Data transformation, Data reduction, Data discretization, Data normalization or Data standardization, Feature selection, and Data representation.

Q3. What is the difference between data mining and data preprocessing?

A. Data mining is the process of discovering patterns and insights from large amounts of data, while data preprocessing is the initial step in data mining which involves preparing the data for analysis. Data preprocessing involves cleaning and transforming the data to make it suitable for analysis. The goal of data preprocessing is to make the data accurate, consistent, and suitable for analysis. It helps to improve the quality and efficiency of the data mining process.

The media shown in this article are not owned by Analytics Vidhya and are used at the Author’s discretion.

I am Sadhvi Anunaya R student of Coimbatore Institute of Technology persuing MSc Decision and Computing Sciences. I wish to explore on data so I came up with the article in this topic data engineering. I am making myself strong to get better career and my aim is to became a data engineer.

Responses From Readers

Clear

Mark
Mark

can you please more explore on machine learning models I need more details on them, The information above was very useful. thanks

Deekshi
Deekshi

This article is very helpful to us and we ask for your help in providing us with articles like this

chaitanya
chaitanya

I loved the content of this website because on this site everything is clear and very point to point explained, I want to give a lot of thanks to the owner of this website, thank you so much, sir..!!!

We use cookies essential for this site to function well. Please click to help us improve its usefulness with additional cookies. Learn about our use of cookies in our Privacy Policy & Cookies Policy.

Show details