Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

EC 607, Spring 2020

Welcome to Economics 607: Econometrics III (Spring 2019) at the University of Oregon (taught by Dr. Ed Rubin).


Lecture Monday and Wednesday 10:00pm–11:50pm, Zoom (See Canvas)

Lab Friday 12:00pm–12:50pm, Zoom (See Canvas)

Office hours


We will mainly use two books.

Mostly Harmless Econometrics: An Empiricist's Companion (MHE)
by Angrist and Pischke
Your new best friend. Read it.

Microeconometrics (C&T)
by Cameron and Trivedi
Also very readable and accessible.

Runner up (the standard):

Econometric Analysis (Greene)
by Greene
Encyclopedic resource for all (most?) of the questions MHE does not answer.

Lecture slides

Note: The linked slides (below) are .html files that will only work properly if you are connected to the internet. If you're going off grid (camping + metrics?), grab the PDFs. You'll miss out on gifs and interactive plots, but the equations will actually show up. I've removed the within-slide (incremental) pauses in the (no pauses) PDF slides.

The content of the lectures mainly follows MHE and Michael Anderson—with additional inspiration from Max Auffhammer and many other sources.

Another note on the notes: I create the slides with xaringan in R. Thanks to Grant McDermott for encouraging me to make this switch.

Lecture 01: Research + R + You = 💖

  1. An introduction to empirical research via applied econometrics.
  2. R: Light introduction—objects, functions, and help.

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE preface + MHE chapter 1

Lecture 02: The Experimental Ideal

  1. Neyman potential outcomes framework (Rubin causal model)
  2. Selection bias and experimental variation in treatment
  3. R: Object types/classes and package management.

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 2

Lecture 03: Why Regression?

  1. What's the big deal about least-squares (population) regression?
  2. What does the CEF tell us?
  3. How does least-squares regression relate to the CEF?

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 3.1

Lecture 04: Inference and Simulation

  1. How do we move from populations to samples?
  2. What matters for drawing basic statistical inferences about the population?
  3. How can we learn about inference from simulation?
  4. How do we run (parallelized) simulations in R?

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 3

Lecture 05: Regression Stuff

  1. Saturated models
  2. When is regression causal?
  3. The conditional-independence assumption

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: Still MHE chapter 3

Lecture 06: Controls

  1. Omitted-variable bias
  2. Good and bad controls

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: Still MHE chapter 3

Lecture 07: Matching

  1. Matching estimators: Nearest neighbor and kernel
  2. Propensity-score methods: Regression control, treatment-effect heterogeneity, blocking, weighting, doubly robust

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 3 + C&T section 25.4

Lecture 08: Instrument Variables

  1. General research designs
  2. Instrumental variables
  3. Two-stage least squares
  4. Heterogeneous treatment effects and the LATE

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 4 + C&T sections 4.8–4.9

Lecture 09: Regression Discontinuity

  1. Sharp regression discontinuities
  2. Fuzzy regression discontinuities
  3. Graphical analyses

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 6 + C&T sections 25.6

Lecture 10: Inference: Clustering

  1. General inference
  2. Moulton
  3. Cluster-robust standard errors

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 8

Lecture 11: Inference: Resampling and Randomization

  1. Resampling
  2. The bootstrap
  3. Permutation tests (Fisher)
  4. Randomization inference (Neyman-Pearson)

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: MHE chapter 6 + C&T sections 25.6

Lecture 12: Machine learning (in one lecture)

  1. Prediction basics
  2. The bias-variance tradeoff
  3. In-sample vs. out-of-sample performance
  4. Hold-out methods (including cross validation)
  5. Ridge regression and lasso

Note formats: .html | .pdf | .pdf (no pauses) | .Rmd
Readings: Introduction to statistical learning

Lab slides

Note: From previous iteration of our class.

Lab 01: R Intro/Review

  1. Object types/classes/structures
  2. Package management
  3. Math and stat. in R
  4. Indexing

Note formats: .html | .html (no pause) | .pdf | .pdf (no pause) | .Rmd
Solutions: .html | .pdf

Lab 02: Data in/and R

  1. Data frames
  2. Data work with dplyr

Note formats: .html | .html (no pause) | .pdf | .pdf (no pause) | .Rmd

Lab 03: RStudio + Data i/o with R

  1. RStudio
  2. Getting data into and out of R

Note formats: .html | .html (no pause) | .pdf | .pdf (no pause) | .Rmd

Lab 04: Regression in R

  1. lm() and lm objects
  2. estimatr and lm_robust()
  3. Other regressions, e.g., glm()

Note formats: .html | .html (no pause) | .pdf | .pdf (no pause) | .Rmd

Lab 05: Plotting in R

  1. Default plot() methods
  2. ggplot2

Note formats: .html | .html (no pause) | .pdf | .pdf (no pause) | .Rmd

Lab 06: Simulation in R

  1. General simulation strategies
  2. Simulating IV in finite samples

Note formats: .html | .html (no pause) | .pdf | .pdf (no pause) | .Rmd

Lab 07: Miscellaneous R Tips and Tricks

  1. The apply family
  2. for() loops
  3. Lists
  4. Logical vectors and which()

Note formats: .html | .html (no pause) | .pdf | .pdf (no pause) | .Rmd

Problem sets

2–5 problem sets combining econometric theory and R.

Problem set 1: problems | solutions

Problem set 2: problems | solutions

Problem set 3: problems with dataset 1, dataset 2, dataset 3, and more data | solutions


Building a research project/proposal.

Step 1: Research question (causal relationship of interest) and motivation.

  • Assignment: Pitch a project—including the causal question of interest, the motivation, and (optional) how you could answer the question.
  • This project should be something you could turn into a legitimate research project.
  • Length: Between 2 sentences and 2 paragraphs (think abstract—read abstracts if necessary).

Due 15 April 2020 (Canvas)

Step 2: Project proposal

Due 27 May 2020 (Canvas)

Step 3: Presentation of project pitch

Due 05 June 2020, sign up on Canvas.

Practice problems

  1. Inference and simulation
  2. Matching
  3. Instrumental variables
  4. Regression discontinuity
  5. Inference: Clustering and resampling


The final exam is due Friday, 12 June 2020 by 11:59pm.


Assignments Each assignment is worth 10% of your course grade.

Project The parts of the group project are jointly worth 25% of your course grade.

Exams The exams will cover the remainder of the points for the course.

  • If there are multiple exams, then they will split the remainder equally.
  • Example: With 3 assignments, the residual = 100% - (3×10% + 25%) = 45%.
    • If we only have a final exam, it would be worth 45%.
    • If we have a final exam and a midterm exam, each would be worth 22.5%.


Metrics books

R resources

Metrics and R


Causally oriented doctoral econometrics course at UO, taught by Ed Rubin






No releases published


No packages published