Book Image

Mastering pandas - Second Edition

By : Ashish Kumar
Book Image

Mastering pandas - Second Edition

By: Ashish Kumar

Overview of this book

pandas is a popular Python library used by data scientists and analysts worldwide to manipulate and analyze their data. This book presents useful data manipulation techniques in pandas to perform complex data analysis in various domains. An update to our highly successful previous edition with new features, examples, updated code, and more, this book is an in-depth guide to get the most out of pandas for data analysis. Designed for both intermediate users as well as seasoned practitioners, you will learn advanced data manipulation techniques, such as multi-indexing, modifying data structures, and sampling your data, which allow for powerful analysis and help you gain accurate insights from it. With the help of this book, you will apply pandas to different domains, such as Bayesian statistics, predictive analytics, and time series analysis using an example-based approach. And not just that; you will also learn how to prepare powerful, interactive business reports in pandas using the Jupyter notebook. By the end of this book, you will learn how to perform efficient data analysis using pandas on complex data, and become an expert data analyst or data scientist in the process.
Table of Contents (21 chapters)
Free Chapter
1
Section 1: Overview of Data Analysis and pandas
4
Section 2: Data Structures and I/O in pandas
7
Section 3: Mastering Different Data Operations in pandas
12
Section 4: Going a Step Beyond with pandas

Binning values

The pandas cut() function bins values in a 1-dimensional array. Consider the following 1-dimensional array with 10 values. Let's group it into three bins:

bin_data = np.array([1, 5, 2, 12, 3, 25, 9, 10, 11, 4])
pd.cut(bin_data, bins = 3)

The following is the output:

pandas cut function with three bins

Each of the 10 elements is mapped to one of the three bins. The cut function maps the items to a bin and provides information about each bin. Instead of specifying the number of bins, the boundaries of the bins could also be provided in a sequence:

pd.cut(bin_data, bins = [0.5, 7, 10, 20, 30])

The following is the output:

pandas cut function with bin values

The intervals for binning can be directly defined using the pandas interval_range function. Consider the following example, demonstrating the creation of a pandas IntervalIndex object:

interval = pd.interval_range...