Book Image

Hands-On Data Analysis with Pandas - Second Edition

By : Stefanie Molin
5 (1)
Book Image

Hands-On Data Analysis with Pandas - Second Edition

5 (1)
By: Stefanie Molin

Overview of this book

Extracting valuable business insights is no longer a ‘nice-to-have’, but an essential skill for anyone who handles data in their enterprise. Hands-On Data Analysis with Pandas is here to help beginners and those who are migrating their skills into data science get up to speed in no time. This book will show you how to analyze your data, get started with machine learning, and work effectively with the Python libraries often used for data science, such as pandas, NumPy, matplotlib, seaborn, and scikit-learn. Using real-world datasets, you will learn how to use the pandas library to perform data wrangling to reshape, clean, and aggregate your data. Then, you will learn how to conduct exploratory data analysis by calculating summary statistics and visualizing the data to find patterns. In the concluding chapters, you will explore some applications of anomaly detection, regression, clustering, and classification using scikit-learn to make predictions based on past data. This updated edition will equip you with the skills you need to use pandas 1.x to efficiently perform various data manipulation tasks, reliably reproduce analyses, and visualize your data for effective decision making – valuable knowledge that can be applied across multiple domains.
Table of Contents (21 chapters)
1
Section 1: Getting Started with Pandas
4
Section 2: Using Pandas for Data Analysis
9
Section 3: Applications – Real-World Analyses Using Pandas
12
Section 4: Introduction to Machine Learning with Scikit-Learn
16
Section 5: Additional Resources
18
Solutions

Exercises

Run through the introduction_to_data_analysis.ipynb notebook for a review of this chapter's content, review the python_101.ipynb notebook (if needed), and then complete the following exercises to practice working with JupyterLab and calculating summary statistics in Python:

  1. Explore the JupyterLab interface and look at some of the shortcuts that are available. Don't worry about memorizing them for now (eventually, they will become second nature and save you a lot of time)—just get comfortable using Jupyter Notebooks.
  2. Is all data normally distributed? Explain why or why not.
  3. When would it make more sense to use the median instead of the mean for the measure of center?
  4. Run the code in the first cell of the exercises.ipynb notebook. It will give you a list of 100 values to work with for the rest of the exercises in this chapter. Be sure to treat these values as a sample of the population.
  5. Using the data from exercise 4, calculate the following statistics without importing anything from the statistics module in the standard library (https://docs.python.org/3/library/statistics.html), and then confirm your results match up to those that are obtained when using the statistics module (where possible):

    a) Mean

    b) Median

    c) Mode (hint: check out the Counter class in the collections module of the standard library at https://docs.python.org/3/library/collections.html#collections.Counter)

    d) Sample variance

    e) Sample standard deviation

  6. Using the data from exercise 4, calculate the following statistics using the functions in the statistics module where appropriate:

    a) Range

    b) Coefficient of variation

    c) Interquartile range

    d) Quartile coefficient of dispersion

  7. Scale the data created in exercise 4 using the following strategies:

    a) Min-max scaling (normalizing)

    b) Standardizing

  8. Using the scaled data from exercise 7, calculate the following:

    a) The covariance between the standardized and normalized data

    b) The Pearson correlation coefficient between the standardized and normalized data (this is actually 1, but due to rounding along the way, the result will be slightly less)