Skip to content
PyCon 2019 Tutorial: Analyzing Census Data with Pandas
Jupyter Notebook Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
binder update environment May 2, 2019
exercises update exercises fix typos May 2, 2019
static add download gif May 1, 2019
.gitignore initial commit Apr 30, 2019

badge badge

Analyzing Census Data with Pandas

PyCon 2019

Materials for my Analyzing Census Data with Pandas workshop for PyCon 2019.

The tutorial

This tutorial is meant to be followed using but if you choose to download the materials and follow along these are the instructions.

Getting the materials

The easiest way to get a copy of this repository is to clone it if you know git

git clone

But you can also download it straight from GitHub:

GitHub Download

Setting up your environment

Only 2 packages are essential for this workshop:

  1. Pandas
  2. Jupyter (notebooks or lab)

You can either pip install them:

pip install pandas jupyterlab

or use conda to install them

conda install -c conda-forge pandas jupyterlab

Once you have the materials and python packages necessary, head over to the exercises directory and launch Jupyter Lab

cd analyzing-census-data
cd exercises
jupyter lab

The structure

This tutorial will guide you through a typical data analysis project utilizing Census data acquired from IPUMS. It's split into 2 notebooks:

  1. Data Preparation
  2. Data Analysis

In the first notebook you will:

  1. Work with compressed data with pandas.
  2. Retrieve high-level descriptive analytics of your data.
  3. Drop columns.
  4. Slice data (boolean indexing).
  5. Work with categorical data.
  6. Work with weighted data.
  7. Use python's pathlib library, making your code more reproducible across platforms.
  8. Develop a reproducible data prep workflow for future projects.

On top of that, in the second notebook you will:

  1. Aggregate data.
  2. Learn about .groupby()
  3. Learn about cross-sections .xs()
  4. Learn about pivot_tables and crosstabs
  5. Develop a reproducible data analysis workflow for future projects.
You can’t perform that action at this time.