Book Image

The Data Wrangling Workshop - Second Edition

By : Brian Lipp, Shubhadeep Roychowdhury, Dr. Tirthajyoti Sarkar
Book Image

The Data Wrangling Workshop - Second Edition

By: Brian Lipp, Shubhadeep Roychowdhury, Dr. Tirthajyoti Sarkar

Overview of this book

While a huge amount of data is readily available to us, it is not useful in its raw form. For data to be meaningful, it must be curated and refined. If you’re a beginner, then The Data Wrangling Workshop will help to break down the process for you. You’ll start with the basics and build your knowledge, progressing from the core aspects behind data wrangling, to using the most popular tools and techniques. This book starts by showing you how to work with data structures using Python. Through examples and activities, you’ll understand why you should stay away from traditional methods of data cleaning used in other languages and take advantage of the specialized pre-built routines in Python. Later, you’ll learn how to use the same Python backend to extract and transform data from an array of sources, including the internet, large database vaults, and Excel financial tables. To help you prepare for more challenging scenarios, the book teaches you how to handle missing or incorrect data, and reformat it based on the requirements from your downstream analytics tool. By the end of this book, you will have developed a solid understanding of how to perform data wrangling with Python, and learned several techniques and best practices to extract, clean, transform, and format your data efficiently, from a diverse array of sources.
Table of Contents (11 chapters)
Preface

2. Advanced Operations on Built-In Data Structures

Activity 2.01: Permutation, Iterator, Lambda, and List

Solution:

These are the detailed steps to solve this activity:

  1. Look up the definition of permutations and dropwhile from itertools. There is a way to look up the definition of a function inside Jupyter itself. Just type the function name, followed by ?, and press Shift + Enter:
    from itertools import permutations, dropwhile
    permutations?
    dropwhile?

    You will see a long list of definitions after each ?. We will skip it here.

  2. Write an expression to generate all the possible three-digit numbers using 1, 2, and 3:
    permutations(range(3)) 

    The output (which will vary in your case) is as follows:

    <itertools.permutations at 0x7f6c6c077af0>
  3. Loop over the iterator expression you generated before. Use the print method to print each element returned by the iterator. Use assert and isinstance to make sure that the elements are tuples:
    for number_tuple in permutations(range...