The
Data
Wrangling
Workshop

A beginner's guide to simplifying Extract, Transform, Load (ETL) processes with the help of hands-on tips, tricks, and best practices, in a fun and interactive way.
Cover of The Data Wrangling Workshop

Get Started with Data Wrangling Today

You'll be up and running with data wrangling in no time at all.

  • $34.99

    $34.99The Data Wrangling Workshop

    Unlock one year of full, unlimited access!
    Buy Now

Learning Made Simple

Nobody likes going through hundreds of pages of dry theory, or struggling with uninteresting examples that don’t compile. We've got you covered. Any time, any device.

  • Learn by doing real-world development, supported every step of the way with step-by-step examples and expert screencasts.

  • Become a verified practitioner and earn an authenticated digital certificate from Packt upon successful completion.

  • Manage your learning based on your personal schedule, with content that lets you pause and resume your progress at will.

A Smarter Way to Learn Data Wrangling

A step-by-step, focused approach to getting up and running with real-world data wrangling in no time at all.

The Data Wrangling Workshop is ideal if you're looking for a structured, hands-on approach to get started with data wrangling.
Buy Now

Course Curriculum

An A to Z tour of data wrangling.

  • 2. Advanced Operations on Built-In Data Structures

    • Overview
    • Advanced Data Structures
    • Exercise 2.01: Introducing to the Iterator
    • Stacks
    • Exercise 2.02: Implementing a Stack in Python
    • Exercise 2.03: Implementing a Stack Using User-Defined Methods
    • Lambda Expressions
    • Exercise 2.04: Implementing a Lambda Expression
    • Exercise 2.05: Lambda Expression for Sorting
    • Exercise 2.06: Multi-Element Membership Checking
    • Queue
    • Exercise 2.07: Implementing a Queue in Python
    • Activity 2.01: Permutation, Iterator, Lambda, and List
    • Activity 2.01: Permutation, Iterator, Lambda, and List
    • Basic File Operations in Python
    • Exercise 2.08: File Operations
    • File Handling
    • Exercise 2.09: Opening and Closing a File
    • The with Statement
    • Exercise 2.10: Reading a File Line by Line
    • Exercise 2.11: Writing to a File
    • Activity 2.02: Designing Your Own CSV Parser
    • Activity 2.02: Designing Your Own CSV Parser
    • Summary
    • Survey I
  • 3. Introduction to NumPy, Pandas, and Matplotlib

    • Overview
    • NumPy Arrays
    • Exercise 3.01: Creating a NumPy Array (from a List)
    • Exercise 3.02: Adding Two NumPy Arrays
    • Exercise 3.03: Mathematical Operations on NumPy Arrays
    • Advanced Mathematical Operations
    • Exercise 3.04: Advanced Mathematical Operations on NumPy Arrays
    • Exercise 3.05: Generating Arrays Using arange and linspace Methods
    • Exercise 3.06: Creating Multi-Dimensional Arrays
    • Exercise 3.07: The Dimension, Shape, Size, and Data Type of Two-dimensional Arrays
    • Exercise 3.08: Zeros, Ones, Random, Identity Matrices, and Vectors
    • Exercise 3.09: Reshaping, Ravel, Min, Max, and Sorting
    • Exercise 3.10: Indexing and Slicing
    • Conditional SubSetting
    • Exercise 3.11: Array Operations
    • Pandas DataFrames
    • Exercise 3.12: Creating a Pandas Series
    • Exercise 3.13: Pandas Series and Data Handling
    • Exercise 3.14: Creating Pandas DataFrames
    • Exercise 3.15: Viewing a DataFrame Partially
    • Indexing and Slicing Columns
    • Exercise 3.16: Creating and Deleting a New Column or Row
    • Statistics and Visualization with NumPy and Pandas
    • Exercise 3.17: Introduction to Matplotlib through a Scatter Plot
    • The Definition of Statistical Measures – Central Tendency and Spread
    • Data Wrangling in Statistics and Visualization
    • Exercise 3.18: Generating Random Numbers from a Uniform Distribution
    • Exercise 3.19: Generating Random Numbers from a Binomial Distribution and Bar Plot
    • Exercise 3.20: Generating Random Numbers from a Normal Distribution and Histograms
    • Exercise 3.21: Calculating Descriptive Statistics from a DataFrame
    • Exercise 3.22: Built-in Plotting Utilities
    • Activity 3.01: Generating Statistics from a CSV File
    • Activity 3.01: Generating Statistics from a CSV File
    • Summary
  • 4. A Deep Dive into Data Wrangling with Python

    • Overview
    • Subsetting, Filtering, and Grouping
    • Exercise 4.01: Examining the Superstore Sales Data in an Excel File
    • Subsetting the DataFrame
    • Exercise 4.02: The unique Function
    • Conditional Selection and Boolean Filtering
    • Exercise 4.03: Setting and Resetting the Index
    • The GroupBy Method
    • Exercise 4.04: The GroupBy Method
    • Detecting Outliers and Handling Missing Values
    • Exercise 4.05: Filling in the Missing Values Using the fillna Method
    • Exercise 4.06: Dropping Missing Values with dropna
    • Outlier Detection Using a Simple Statistical Test
    • Exercise 4.07: Concatenation in Datasets
    • Merging by a Common Key
    • Exercise 4.08: Merging by a Common Key
    • Exercise 4.09: The join Method
    • Useful Methods of Pandas
    • Exercise 4.10: Randomized Sampling
    • The value_counts Method
    • Exercise 4.11: Sorting by Column Values – the sort_values Method
    • Exercise 4.12: Flexibility of User-Defined Functions with the apply Method
    • Activity 4.01: Working with the Adult Income Dataset (UCI)
    • Activity 4.01: Working with the Adult Income Dataset (UCI)
    • Summary
  • 5. Getting Comfortable with Different Kinds of Data Sources

    • Overview
    • Reading Data from Different Sources
    • Exercise 5.01: Working with Headers When Reading Data from a CSV File
    • Exercise 5.02: Reading from a CSV File Where Delimiters Are Not Commas
    • Exercise 5.03: Bypassing and Renaming the Headers of a CSV File
    • Exercise 5.04: Skipping Initial Rows and Footers When Reading a CSV File
    • Reading Only the First N Rows
    • Exercise 5.05: Combining skiprows and nrows to Read Data in Small Chunks
    • Setting the skip_blank_lines Option
    • Exercise 5.06: Reading a General Delimited Text File
    • Reading HTML Tables Directly from a URL
    • Exercise 5.07: Further Wrangling to Get the Desired Data
    • Exercise 5.08: Reading from a JSON File
    • Exercise 5.09: Reading Tabular Data from a PDF File
    • Introduction to Beautiful Soup 4 and Web Page Parsing
    • Exercise 5.10: Reading an HTML File and Extracting Its Contents Using Beautiful Soup
    • Exercise 5.11: DataFrames and BeautifulSoup
    • Exercise 5.12: Exporting a DataFrame as an Excel File
    • Exercise 5.13: Stacking URLs from a Document Using bs4
    • Activity 5.01: Reading Tabular Data from a Web Page and Creating DataFrames
    • Activity 5.01: Reading Tabular Data from a Web Page and Creating DataFrames
    • Summary
    • Survey II
  • 6. Learning the Hidden Secrets of Data Wrangling

    • Overview
    • Advanced List Comprehension and the zip Function
    • Exercise 6.01: Generator Expressions
    • Exercise 6.02: Single-Line Generator Expression
    • Exercise 6.03: Extracting a List with Single Words
    • Exercise 6.04: The zip Function
    • Exercise 6.05: Handling Messy Data
    • Data Formatting
    • Exercise 6.06: Data Representation Using {}
    • Identifying and Cleaning Outliers
    • Exercise 6.07: Outliers in Numerical Data
    • Exercise 6.08: The Z-Score Value to Remove Outliers
    • Levenshtein Distance
    • Exercise 6.09: Fuzzy String Matching
    • Activity 6.01: Handling Outliers and Missing Data
    • Activity 6.01: Handling Outliers and Missing Data
    • Summary
  • 7. Advanced Web Scraping and Data Gathering

    • Overview
    • The Requests and BeautifulSoup Libraries
    • Exercise 7.01: Using the Requests Library to Get a Response from the Wikipedia Home Page
    • Exercise 7.02: Checking the Status of the Web Request
    • Checking the Encoding of a Web Page
    • Exercise 7.03: Decoding the Contents of a Response and Checking Its Length
    • Exercise 7.04: Extracting Readable Text from a BeautifulSoup Object
    • Extracting Text from a Section
    • Exercise 7.05: Using Advanced BS4 Techniques to Extract Relevant Text
    • Exercise 7.06: Creating a Compact Function to Extract the On this day Text from the Wikipedia Home Page
    • Reading Data from XML
    • Exercise 7.07: Creating an XML File and Reading XML Element Objects
    • Exercise 7.08: Finding Various Elements of Data within a Tree (Element)
    • Reading from a Local XML File into an ElementTree Object
    • Exercise 7.09: Traversing the Tree, Finding the Root, and Exploring All the Child Nodes and Their Tags and Attributes
    • Exercise 7.10: Using the text Method to Extract Meaningful Data
    • Extracting and Printing the GDP/Per Capita Information Using a Loop
    • Exercise 7.11: A Simple Demo of Using XML Data Obtained by Web Scraping
    • Reading Data from an API
    • Exercise 7.12: Defining and Testing a Function to Pull Country Data from an API
    • Using the Built-In JSON Library to Read and Examine Data
    • Exercise 7.13: Testing the Function by Building a Small Database of Country Information
    • Fundamentals of Regular Expressions (RegEx)
    • Exercise 7.14: Using the match Method to Check Whether a Pattern Matches a String/Sequence
    • Exercise 7.15: Compiling Programs to Match Objects
    • Exercise 7.16: Using Additional Parameters in the match Method to Check for Positional Matching
    • Finding the Number of Words in a List That End with "ing"
    • Exercise 7.17: The search Method in RegEx
    • Exercise 7.18: Using the span Method of the Match Object to Locate the Position of the Matched Pattern
    • Exercise 7.19: Examples of Single-Character Pattern Matching with search
    • Exercise 7.20: Handling Pattern Matching at the Start or End of a String
    • Exercise 7.21: Pattern Matching with Multiple Characters
    • Exercise 7.22: Greedy versus Non-Greedy Matching
    • Exercise 7.23: Controlling Repetitions to Match in a Text
    • Sets of Matching Characters
    • Exercise 7.24: Sets of Matching Characters
    • Exercise 7.25: The Use of OR in RegEx Using the OR Operator
    • The findall Method
    • Activity 7.01: Extracting the Top 100 e-books from Gutenberg
    • Activity 7.01: Extracting the Top 100 e-books from Gutenberg
    • Activity 7.02: Building Your Own Movie Database by Reading an API
    • Activity 7.02: Building Your Own Movie Database by Reading an API
    • Summary
  • 8. RDBMS and SQL

    • Overview
    • Refresher of RDBMS and SQL
    • Exercise 8.01: Connecting to a Database in SQLite
    • DDL and DML Commands in SQLite
    • Exercise 8.02: Using DDL and DML Commands in SQLite
    • Exercise 8.03: Sorting Values That Are Present in the Database
    • The ALTER Command
    • Exercise 8.04: Altering the Structure of a Table and Updating the New Fields
    • Exercise 8.05: Grouping Values in Tables
    • Relation Mapping in Databases
    • Joins
    • Exercise 8.06: Deleting Rows from Tables
    • Updating Specific Values in a Table
    • Exercise 8.07: RDBMS and DataFrames
    • Activity 8.01: Retrieving Data Accurately from Databases
    • Activity 8.01: Retrieving Data Accurately from Databases
    • Summary
    • Survey III
  • 9. Applications in Business Use Cases and Conclusion of the Course

    • Overview
    • Applying Your Knowledge to a Data Wrangling Task
    • Activity 9.01: Data Wrangling Task – Fixing UN Data
    • Activity 9.01: Data Wrangling Task – Fixing UN Data
    • Activity 9.02: Data Wrangling Task – Cleaning GDP Data
    • Activity 9.02: Data Wrangling Task – Cleaning GDP Data
    • Activity 9.03: Data Wrangling Task – Merging UN Data and GDP Data
    • Activity 9.03: Data Wrangling Task – Merging UN Data and GDP Data
    • Activity 9.04: Data Wrangling Task – Connecting the New Data to the Database
    • Activity 9.04: Data Wrangling Task – Connecting the New Data to the Database
    • An Extension to Data Wrangling
    • Basic Familiarity with Big Data and Cloud Technologies
    • What Goes with Data Wrangling?
    • Summary
  • Hack Your Brain

    We've applied the latest pedagogical techniques to deliver a truly multimodal experience. It'll keep you engaged and make the learning stick. It's science!

  • Build Real Things

    Nobody likes wasting their time. We cut right to the action and get you building real skills that real, working developers value. The perfect approach for a career move.

  • Learn From Experts

    We've paired technical experts with top editorial talent. They've worked hard to deliver you the maximum impact for each minute you spend learning. It's our secret sauce.

Join Over 85,000 Satisfied Students

Here is what they have to say about Packt workshops:

Amazing

Federico Patito

This course is excelent, with this course you learn a lot of topics and each topic has some exercises that are very u...

Read More

This course is excelent, with this course you learn a lot of topics and each topic has some exercises that are very useful.

Read Less

Very detailed workshop with good excercises and activites

Ajijul Hakim Abid

Very good in-depth workshop in python. Goes over almost every topics but some topics could have a more detailed expla...

Read More

Very good in-depth workshop in python. Goes over almost every topics but some topics could have a more detailed explanation. Would't recommend for someone totally new to programming.

Read Less

Great Introductory Course

mohammad nazeri

This course covers basic Python syntax, how to develop software in python, how to work in a team, and an introduction...

Read More

This course covers basic Python syntax, how to develop software in python, how to work in a team, and an introduction to data science and machine learning with Python.

Read Less

An excellent way to learn Python

Juan Alberto Cañero Tamayo

I like the methodology applied to this workshop, it starts from the basic and a good explanation of the subjects plus...

Read More

I like the methodology applied to this workshop, it starts from the basic and a good explanation of the subjects plus a plenty of examples helps you to understand Python.

Read Less

5 Stars for the content !

Mahesh Deshpande

I belong to mechanical background and started leaning any kind of programming in my life with this course. This is to...

Read More

I belong to mechanical background and started leaning any kind of programming in my life with this course. This is too good for a beginner like me. The content is properly given and exercise and activities are also good. Video explainations help a lot ! The only problem I faced was the kernel busy problem in the Jupyter IDE. Otherwise I found Jupyter most user friendly as compared to other IDEs. Thanks Packt for this course !

Read Less

The most satisfying python workshop i ever attended!

Sanket Gadge

I have attended many python workshops, but this one is really great, the content is super awesome. Actually all the c...

Read More

I have attended many python workshops, but this one is really great, the content is super awesome. Actually all the courses workshops i ever attended they never taught me (for ex. say logging) everything in python, but this workshop even covers the python from beginner to advanced. With activities included, this workshop made me think more and more rather than just going through the content and reading text and videos. I learned a ton here. Thank you for all the coaches who creating this extra ordinary content.

Read Less

DATA SCIENCE Workshop

LALIT JADHAV

This course format and is very easily understandable. Workshop Certificate structure are very wonderful. Thanks a lot...

Read More

This course format and is very easily understandable. Workshop Certificate structure are very wonderful. Thanks a lot for Packt👈

Read Less

Excellent course !!

Luiz Pellegrini

Very well structured, with good examples and a rational sequence !! An additional feature is that it is updated and d...

Read More

Very well structured, with good examples and a rational sequence !! An additional feature is that it is updated and designed run on Jupyter Notebooks!!

Read Less

Course content

Edward Amankwah

The course presents a great way to data visualization techniques and it also opens up a lot of opportunities for data...

Read More

The course presents a great way to data visualization techniques and it also opens up a lot of opportunities for data scientist to explore their dataset before and after data modelling.

Read Less

Many disciplines in Data Visualization

Thomas Hopf

Taking into account Python and therefore Jupyter Notebooks as a "platform" isn't a problem at all, since it's common....

Read More

Taking into account Python and therefore Jupyter Notebooks as a "platform" isn't a problem at all, since it's common. Setting up by "cloning" a github repository was very easy. The toolboxes for visualization in focus are Matplotlib (famous), Seaborn, Geoplotlib. The order makes sense and in order to get Python basics pandas and numpy are also introduced first. Finally Bokeh is introduced as an interactive tool with no deep-dive but explaining the concept and options. At the end there will be a summary. The quizzes are not that easy in my opinion and you really should follow every topic and do the exersices, activities. Thanks for this perfect designed workshop course and the good example datasets. Greetz, Tommy

Read Less

Simple and straight-forward intro

Geoffrey Letsoalo

The introduction is simple and very informative in terms of estalishing and getting the development environment going...

Read More

The introduction is simple and very informative in terms of estalishing and getting the development environment going. Very intuitive!

Read Less

Different and made for people like me

Muizz Lateef

I have been watching tutorial videos for over 6 months now and not really confident yet, but few minutes into this te...

Read More

I have been watching tutorial videos for over 6 months now and not really confident yet, but few minutes into this text approach and i am already getting the whole idea

Read Less

Excellent Course Overall

Jon Hill

Had some familiarity with Python before starting the course and working through the exercises and activities, certain...

Read More

Had some familiarity with Python before starting the course and working through the exercises and activities, certainly picked up some things that I had missed before and filled some gaps in my knowledge. Course needs a bit of proof-reading as a number of errors sprinkled throughout. Found the Activities needed a little more guidance rather than being vague but worked out in the end. Overall excellent course, especially for those beginning with Python as covers a full spectrum of Python requirements. Many thanks

Read Less

Review for the Python Workshop

Samapriya Trivedi

This workshop provides one of the best educative content for the Python available on internet. Got to know a lot abou...

Read More

This workshop provides one of the best educative content for the Python available on internet. Got to know a lot about Python and it's working in a very elaborate manner.

Read Less

Learning Python is Easier

Jayabalan Ravichandiran

Python concepts and using those in practice , made easier to know about python. Core concepts are explained in detail...

Read More

Python concepts and using those in practice , made easier to know about python. Core concepts are explained in detail . The activities enables to play & know python more than reading through only concepts . The Best of python course is here ....

Read Less

Real Python lover... The Packt.

Jonty Rhodes

What can I say this website is very good for beginners. Although this website enhancing my programming experience al...

Read More

What can I say this website is very good for beginners. Although this website enhancing my programming experience also. keep it up. May Allah bless you.

Read Less

Attila Sebők's review

Attila Sebők

A Python Workshop kellemes meglepetés volt számomra. Tetszett a tema csoportosítása. Sokat tanultam a Workshopból. Am...

Read More

A Python Workshop kellemes meglepetés volt számomra. Tetszett a tema csoportosítása. Sokat tanultam a Workshopból. Ami lehetne jobb: naprakész hibajavítás a leckékben és a tesztekben.

Read Less

Wonderful

Varun Kanthety

This is a wonderful course to dive deeply into the main features of JavaScript. Without any hesitation, I highly reco...

Read More

This is a wonderful course to dive deeply into the main features of JavaScript. Without any hesitation, I highly recommend this workshop to learn JavaScript.

Read Less

Good course on JavaScript... Super Easy Language, Every e...

Kuntal Bhowmick

The Workshop is really good and covers a lot of content starting from basics till advance. The Workshop explain ho...

Read More

The Workshop is really good and covers a lot of content starting from basics till advance. The Workshop explain how things work by using simple language, so you don't feel like you're just copying code—you're actually understanding what you're writing, and why. In particular, I appreciate this JavaScript Workshop because of the exercise and the activities given for each and every concept. The workshop also show students how to problem-solve like a developer: what to type into Google when you're stuck, how to get to the bottom of an error message, etc. I think the understanding the core concept was very beneficial and think it would help me become a better developer in the future. Amazing breakdowns that really help fill in knowledge gaps. Great exercises with fully detailed explanations. I am satisfied with the course. I highly recommend this course to anyone who wants to learn JS(JavaScript). Edit: I want to add another thing. The quiz given after every section is very important. It gives me how much I understand the section. the quiz also displays the explanation of each answer along with whether my selected answer is right or wrong.

Read Less

Programming fundamentals

Oteri Eyenike

I was able to understand the conditional statement, data types, the object of properties and I like every aspect of t...

Read More

I was able to understand the conditional statement, data types, the object of properties and I like every aspect of the course.

Read Less

Content

Adedeji Adelanwa

It is quite informative and helpfully. A real refresher and eye opener for me. Though there are a few typos and sente...

Read More

It is quite informative and helpfully. A real refresher and eye opener for me. Though there are a few typos and sentence misplacement and also video. I don't mind helping out in correcting the errors

Read Less

A must for those aiming to become true web developers

Jose B

Despite minor aspects with tests (the one focused on PHP), it is a very good way to teach yourself JavaScript coverin...

Read More

Despite minor aspects with tests (the one focused on PHP), it is a very good way to teach yourself JavaScript covering the latest ECMA standards,

Read Less

One of the best place to learn

NAGA SANKARA SAI KARTHIK MUKKU

This workshop course is not a pack of subject but also helps in connecting real-world and also provide wide-range of ...

Read More

This workshop course is not a pack of subject but also helps in connecting real-world and also provide wide-range of concepts which make this workshop stand out of the box

Read Less

Great workshop

Djoko Cahyo Utomo Lieharyani

This workshop gives a provide broad insight into python, more to practical exercises and activities. There are some p...

Read More

This workshop gives a provide broad insight into python, more to practical exercises and activities. There are some problems tough, like some wrong script, redundant question, and no clear definition on some part (around 15% of 100% I guess), but the discussion part is helpful, coz sometimes with reading discussion part make some problem clear. My suggestion is to make the workshop perfect by validating the disscussion part.

Read Less

Excellent!

Marcos Souza

I was very surprised by the quality of this course. Its well organized, full of examples on the subjects it is teachi...

Read More

I was very surprised by the quality of this course. Its well organized, full of examples on the subjects it is teaching, relevant quizzes and exercises, and even videos. Its by far the best free course i've ever seen.

Read Less

Course content

Edward Amankwah

A great way to review the length and breath of Python language. It introduces more concepts that can be pursued furth...

Read More

A great way to review the length and breath of Python language. It introduces more concepts that can be pursued further which I really like, especially for data science.

Read Less

Get Verified

Complete The Data Wrangling Workshop to unlock your very own Packt certificate.

Unlock your own digital certificate by completing all activities. Designed to be easy to share with potential employers on LinkedIn, as well as other popular social media channels.

Take A Step Forward

There has never been a better time to start learning data wrangling.

  • $34.99

    $34.99The Data Wrangling Workshop

    Unlock one year of full, unlimited access!
    Buy Now

Need More Python Data Science?

Don't worry, we've got your back with other workshops too!

Show me my options!