I have helped teach an undergraduate data analysis class focused on the causes and consequences of political corruption and a graduate course on causal inference. Below are some relevant materials I have collected and presented that may be of use to others. I also include some tutorials I have developed for presentation to graduate students in the UCLA Political Science department.

Causal inference

Machine Learning Estimation of Heterogeneous Treatment Effects

A short tutorial on how to implement in R a simple version of a data-driven approach to uncovering heterogeneous treatment effects proposed by Athey and Imbens (2015). The tutorial can be found here.

An official package has now been released by Susan Athey and friends and can be found here.

Summarizing TIFF Data by Polygons in Shapefiles

A brief introduction to how to trim and spatially summarize data in tiff format by polygon shapefiles. Useful for averaging night time luminosity data by political district, for example.

Downloading Facebook and Twitter Data using Python

Put together for a workshop on January 29, 2016, this tutorial and accompanying example scripts provide a guide to downloading Facebook and Twitter data using their APIs. Done entirely in Python, this tutorial takes advantage of several Python modules to ease data collection and storage.

Undergraduate Data Analysis


I prefer working in R (Download R). It is easy to use RStudio to edit your R code and produce R Markdown files (Download RStudio). Hopefully you have used these before in PS 6 or a similar course. If not, there are many resources available on the web, and I will link some of them here shortly.

R Markdown is a great tool to interleave code and writings. I have set up a quick manual and an example of its use to get you started:

However, I also will be teaching with Stata in some situations. To that end, I have also created the following resource:

Data Visualization