Giter Club home page Giter Club logo

microeconometrics's Introduction

Microeconometrics

Build Status Code style: black License: MIT Zulip Chat

This course introduces students to basic microeconmetric methods. The objective is to learn how to make and evaluate causal claims. By the end of the course, students should be able to apply each of the methods discussed and critically evaluate research based on them. Throughout the course we will make heavy use of Python and its SciPy ecosystem as well as Jupyter Notebooks.

Counterfactual approach to causal analysis

Potential outcome model

Directed graphs

Please use the table of content to navigate the rest of the material.

  1. Lectures
  2. Problem sets
  3. Handouts
  4. Special focus
  5. Resources
  6. Iterations

We collect a list of additional, more general, reading recommendations here.

Lectures

We provide the lectures in the form of a Jupyter notebook.

We briefly introduce the course and discuss some basic ideas about counterfactuals and causal inference. We touch on the two pillars of the counterfactual approach to casusal analysis. We first explore the basic ideas of the potential outcome model and then preview the use of causal graphs. In addition, we provide a basic tutorial for some core tools used in data science.

We discuss the core conceptual model of the course. We initially discuss the individual-level treatment effect but then quickly scale back our ambitions to learn about population-level parameters instead. Then we turn to the stable-unit treatment assumption and address the challenges to the naive estimation of average causal effects in observational studies. We conclude with some examples that illustrate the flexibility of the potential outcome model to more than a simple binary treatment.

We explore the usefulness of causal graphs for the visualization of complex causal systems and the clarification of alternative identification strategies for causal effects. After establishing their basic notation and some key concepts, we link them to structural equations and the potential outcome model.

We study the basic conditioning strategy for the estimation of causal effects. We first link the concept of conditioning to direct graphs and start discussing the concept of a back-door path. Then we illustrate in a simulated example how collider variables induce a conditional association between two independent variables. Finally, we discuss the back-door criterion and work through some examples.

We review the fundamental concepts of matching such as stratification of data, weighting to achieve balance, and propensity scores. We explore several alternative implementations as we consider matching as conditioning via stratification, matching as a weighing approach, and matching as a data analysis algorithm. Throughout we heavily rely on simulated examples to explore some practical issues such as sparsity of data.

We study the most common form of data analysis by looking at simple regression estimators. We first study them as a basic descriptive tool that provides the best linear approximation to the conditional expectation function. Then we turn to the more demanding interpretation that it allows to determine causal effects. We contrast the issues of omitted-variable bias and selection bias. Finally, we conclude with an illustration of Freedman's paradox to showcase some of the challenges in applied empirical work.

We revisit the issues of treatment effect heterogeneity and individuals' selecting their treatment status based on gains unobserved by the econometrician. We lay the groundwork to estimate causal effects using instrumental variables, front-door identification with causal mechanisms, and conditioning estimators using pretreatment variables. We work through an elaborate panel data demonstration that illustrates the shortcoming of conditioning estimators in the presence of self-selection.

We study the use of instrumental variable estimators.

We study front-door identification that allow (under certain conditions) to provide a causal account of the effect of D on Y.

We now explore models in which we have multiple observations at different points in time. Due to its similar structure, we also look at the sharp and fuzzy regression discontinuity design.

We study regression discontinuity design in more detail. We discuss identification, issues in interpretation, and challenges to application based on the seminal review by Lee & Lemieux (2010). We reproduce and check the robustness of some of the results in Lee (2008).

We review the basic ideas behind the generalized method of moments (GMM) and implement some numerical examples. After introducing its basic setup, we discuss the GMM criterion function and how alternative estimation strategies are cast as GMM estimation problems. We then turn to the issues of identification and the role of the weighing matrix. Throughout, we practice the basic derivations involved in the GMM approach using an instrumental variables setup.

Problem sets

We will work on several problem sets throughout the course.

We explore the potential outcome model using observed and simulated data inspired by the National Health Interview Survey. The accompanying data sets are available here.

We compare the consistency of regression and matching estimators using LaLonde (1986) framework and the Current Population Survey data. The accompanying data sets are available here.

We practice RDD with Lee (2008) framework. In particular, we illustrate a discontinuity at the cutoff point with local averages graph, estimate treatment effect by local linear regression and choose an optimal bandwidth by cross-validation procedure. The accompanying data sets are available here.

We explore the Generalized Roy framework and practice estimation of marginal treatment effects using the open-source software package grmpy. Moreover, we simulate our own data set to conduct a Monte Carlo analysis and compare the performance of different estimators in the presence of essential heterogeneity. The accompanying files are available here and data here.

Handouts

We curate list of handouts that summarize selected issues.

Special focus

We discuss selected topics in more details based on student demands.

We review issues in the construction of standard errors such as the potential bias of robust standard error estimates, clustering, and serial correlation based on the material presented in Angrist & Pischke (2009). We use this opportunity to discuss the research reported in Krueger (1999).

Resources

We provide some additional resources that are useful for our course work in general.

Textbooks

Datasets

The textbooks above provide an impressive amount of data from research articles. We provide them in a central place here.

Tools

We maintain a list of useful resources around the tooling used in the course here.

Iterations

  • Summer Quarter 2020, Graduate Program at the University of Bonn, please see here for details.

  • Summer Quarter 2019, Graduate Program at the University of Bonn, please see here for details.

microeconometrics's People

Contributors

peisenha avatar milakis avatar margaritarad avatar luward avatar vstottuth avatar segsell avatar timmens avatar amageh avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.