0% found this document useful (0 votes)
128 views

DID101

This document provides an overview of how to estimate a differences-in-differences model using Stata. It explains how to generate dummy variables for the treatment group and time period of treatment. It then shows how to estimate the DID estimator by including these variables and their interaction in a regression, as well as using the hashtag method. Finally, it introduces the diff command in Stata, which can also be used to estimate the DID model and test the significance of the treatment effect.

Uploaded by

Betty Bup
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
128 views

DID101

This document provides an overview of how to estimate a differences-in-differences model using Stata. It explains how to generate dummy variables for the treatment group and time period of treatment. It then shows how to estimate the DID estimator by including these variables and their interaction in a regression, as well as using the hashtag method. Finally, it introduces the diff command in Stata, which can also be used to estimate the DID model and test the significance of the treatment effect.

Uploaded by

Betty Bup
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 6

DifferencesinDifferences

(usingStata)
(workinprogress)

OscarTorresReyna
[email protected]

August 2015 http://dss.princeton.edu/training/


Differenceindifferences(DID)
Estimationstepbystep
* Getting sample data.

use "http://dss.princeton.edu/training/Panel101.dta", clear

* Create a dummy variable to indicate the time when the treatment started. Lets
assume that treatment started in 1994. In this case, years before 1994 will
have a value of 0 and 1994+ a 1. If you already have this skip this step.

gen time = (year>=1994) & !missing(year)

* Create a dummy variable to identify the group exposed to the treatment. In


this example lets assumed that countries with code 5,6, and 7 were treated
(=1). Countries 1-4 were not treated (=0). If you already have this skip this
step.

gen treated = (country>4) & !missing(country)

* Create an interaction between time and treated. We will call this interaction
did

gen did = time*treated

OTR 2
Differenceindifferences(DID)
Estimationstepbystep
* Estimating the DID estimator

reg y time treated did, r


. reg y time treated did, r

Linear regression Number of obs = 70


F(3, 66) = 2.17
Prob > F = 0.0998
R-squared = 0.0827
Root MSE = 3.0e+09

Robust
y Coef. Std. Err. t P>|t| [95% Conf. Interval]

time 2.29e+09 9.00e+08 2.54 0.013 4.92e+08 4.09e+09


treated 1.78e+09 1.05e+09 1.70 0.094 -3.11e+08 3.86e+09
did -2.52e+09 1.45e+09 -1.73 0.088 -5.42e+09 3.81e+08
_cons 3.58e+08 7.61e+08 0.47 0.640 -1.16e+09 1.88e+09

* The coefficient for did is the differences-in-differences


estimator. The effect is significant at 10% with the treatment having
a negative effect.
OTR 3
Differenceindifferences(DID)
Estimationstepbystep
* Estimating the DID estimator (using the hashtag method, no need to
generate the interaction)

reg y time##treated, r
. reg y time##treated, r

Linear regression Number of obs = 70


F(3, 66) = 2.17
Prob > F = 0.0998
R-squared = 0.0827
Root MSE = 3.0e+09

Robust
y Coef. Std. Err. t P>|t| [95% Conf. Interval]

1.time 2.29e+09 9.00e+08 2.54 0.013 4.92e+08 4.09e+09


1.treated 1.78e+09 1.05e+09 1.70 0.094 -3.11e+08 3.86e+09

time#treated
1 1 -2.52e+09 1.45e+09 -1.73 0.088 -5.42e+09 3.81e+08

_cons 3.58e+08 7.61e+08 0.47 0.640 -1.16e+09 1.88e+09

* The coefficient for time#treated is the differences-in-


differences estimator (did in the previous example). The effect is
significant at 10% with the treatment having a negative effect.
OTR 4
Differenceindifferences(DID)
Usingthecommanddiff
ThecommanddiffisuserdefinedforStata.Toinstalltype

ssc install diff Dummiesfortreatmentandtime,seepreviousslide

. diff y, t(treated) p(time)

Number of observations in the DIFF-IN-DIFF: 70


Baseline Follow-up
Control: 16 24 40
Treated: 12 18 30
28 42

R-square: 0.08273

DIFFERENCE IN DIFFERENCES ESTIMATION


BASE LINE FOLLOW UP
Outcome Variable Control Treated Diff(BL) Control Treated Diff(FU) DIFF-IN-DIFF

y 3.6e+08 2.1e+09 1.8e+09 2.6e+09 1.9e+09 -7.4e+08 -2.5e+09


Std. Error 7.4e+08 8.5e+08 1.1e+09 6.0e+08 7.0e+08 9.2e+08 1.5e+09
t 0.49 3.6e+08 1.58 3.6e+08 4.4e+09 1.8e+09 -1.73
P>|t| 0.629 0.015 0.120 0.000 0.008 0.422 0.088*

* Means and Standard Errors are estimated by linear regression


**Inference: *** p<0.01; ** p<0.05; * p<0.1
pvalueforthetreatment
Typehelp diff formoredetails/options OTR effect,orDIDestimator.5
References
Introductiontoeconometrics,JamesH.Stock,MarkW.Watson.2nd
ed.,Boston:PearsonAddisonWesley,2007.

DifferenceinDifferencesEstimation,Imbens/Wooldridge,Lecture
Notes10,summer2007.
http://www.nber.org/WNE/lect_10_diffindiffs.pdf

Lecture3:DifferencesinDifferences,FabianWaldinger
http://www2.warwick.ac.uk/fac/soc/economics/staff/ffwaldinger/tea
ching/ec9a8/slides/lecture_3__did.pdf

OTR 6

You might also like