This webpage contains all the materials for a one-day workshop on causal impact assessment. The materials on this website are CC-BY-4.0 licensed.
How do we assess whether a school policy intervention has had the desired effect on student performance? How do we estimate the impact a natural disaster has had on the inhabitants of affected regions? How can we determine whether a change in the maximum speed on highways has lead to fewer accidents? These types of questions are at the core of many social scientific research problems. While questions with this structure are seemingly simple, their causal effects are notoriously hard to estimate, because often we cannot perform a randomized controlled experiment.
In this course, we will deal with several advanced methods for answering such questions, with a dual focus:
- What are the causal assumptions underlying these methods?
- How can we put these methods in practice?
At the end of this workshop, participants have a firm grasp of the basics and limits of causal impact assessment, as well as the skills to start applying these methods in their own work.
We assume the following:
-
you are comfortable with estimating and interpreting regression models
-
you are familiar with the
R
programming language and you have a recent version installed -
it's a bonus if you are somewhat familiar with the
tidyverse
suite of packages (readr
,dplyr
,ggplot
,tibble
) -
you have installed the following
R
packages on your computer:tidyverse
sandwich
lmtest
tidysynth
rdrobust
fpp3
mice
CausalImpact
You can use the following code to install these at once:
install.packages(c("tidyverse", "sandwich", "lmtest", "tidysynth", "rdrobust", "fpp3", "mice", "CausalImpact"))
Time | Duration | Activity | Content | link |
---|---|---|---|---|
09:00 | 45 | Lecture | Introduction + pre-post + DiD | intro.pdf |
09:45 | 15 | Practical | Setup + data intro | intro.html |
10:00 | 25 | Lecture | Pre-post + DiD | |
10:25 | 20 | Practical | Pre-post + DiD | |
10:45 | 15 | Break | ||
11:00 | 30 | Lecture | Interrupted time series (+RDD) | its.pdf |
11:30 | 30 | Practical | Interrupted time series (+RDD) | its.html |
12:00 | 60 | Lunch | ||
13:00 | 45 | Lecture | Synthetic control | synthetic_control.pdf |
13:45 | 45 | Practical | Synthetic control | synthetic_control.html |
14:30 | 15 | Break | ||
14:45 | 45 | Lecture | (synthetic) CITS and CausalImpact | causal_impact.pdf |
15:30 | 45 | Practical | (synthetic) CITS and CausalImpact | causal_impact.html |
16:15 | 15 | Break | ||
16:30 | 30 | Discussion | Conclusion + open questions | discussion.pdf |
17:00 | End |
You can download the dataset we have prepared from here: proposition99.rds
. Save it in a nicely accessible place, we will be using it in every practical.
- Course materials for program evaluation for public service
- Causal inference for the Brave and True online python book
- Using Synthetic Controls: Feasibility, Data Requirements, and Methodological Aspects pdf available here
- Forecasting: principles and practice 3rd ed. online R book
- Application of causal impact analysis in marketing at stitch fix
This project is developed and maintained by the ODISSEI Social Data Science (SoDa) team.
For questions about this course, you can contact us at soda@odissei-data.nl, or you can contact the instructors Erik-Jan (e.vankesteren1@uu.nl) or Oisín (ryanoisin@gmail.com) directly.
Course logo created by Nithinan Tatah from Noun Project