QDiD: Quantile Difference in Differences

Description Usage Arguments Value References Examples

View source: R/QDiD.R

Description

QDiD is a Difference in Differences type method for computing the QTET.

The method can accommodate conditioning on covariates though it does so in a restrictive way: It specifies a linear model for outcomes conditional on group-time dummies and covariates. Then, after residualizing (see details in Athey and Imbens (2006)), it computes the Change in Changes model based on these quasi-residuals.

Usage

1
2
3
4
5
QDiD(formla, xformla = NULL, t, tmin1, tname, x = NULL, data,
  dropalwaystreated = TRUE, panel = FALSE, se = TRUE, idname = NULL,
  method = NULL, uniqueid = NULL, alp = 0.05, probs = seq(0.05, 0.95,
  0.05), iters = 100, retEachIter = FALSE, seedvec = NULL,
  printIter = F, pl = FALSE, cores = NULL)

Arguments

formla

The formula y ~ d where y is the outcome and d is the treatment indicator (d should be binary)

xformla

A optional one sided formula for additional covariates that will be adjusted for. E.g ~ age + education. Additional covariates can also be passed by name using the x paramater.

t

The 3rd time period in the sample (this is the name of the column)

tmin1

The 2nd time period in the sample (this is the name of the column)

tname

The name of the column containing the time periods

x

An optional vector of covariates (the name of the columns). Covariates can also be passed in formulat notation using the xformla paramter.

data

The name of the data.frame that contains the data

dropalwaystreated

How to handle always treated observations in panel data case (not currently used)

panel

Binary variable indicating whether or not the dataset is panel. This is used for computing bootstrap standard errors correctly.

se

Boolean whether or not to compute standard errors

idname

The individual (cross-sectional unit) id name

method

The method for estimating the propensity score when covariates are included

uniqueid

Not sure if this is used anymore

alp

The significance level used for constructing bootstrap confidence intervals

probs

A vector of values between 0 and 1 to compute the QTET at

iters

The number of iterations to compute bootstrap standard errors. This is only used if se=TRUE

retEachIter

Boolean whether or not to return list of results from each iteration of the bootstrap procedure

seedvec

Optional value to set random seed; can possibly be used in conjunction with bootstrapping standard errors.

printIter

Boolean only used for debugging

pl

boolean for whether or not to compute bootstrap error in parallel. Note that computing standard errors in parallel is a new feature and may not work at all on Windows.

cores

the number of cores to use if bootstrap standard errors are computed in parallel

Value

QTE Object

References

Athey, Susan and Guido Imbens. “Identification and Inference in Nonlinear Difference-in-Differences Models.” Econometrica 74.2, pp. 431-497, 2006.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
## load the data
data(lalonde)

## Run the Quantile Difference in Differences method conditioning on
## age, education, black, hispanic, married, and nodegree
qd1 <- QDiD(re ~ treat, t=1978, tmin1=1975, tname="year",
 xformla=~age + I(age^2) + education + black + hispanic + married + nodegree,
 data=lalonde.psid.panel, idname="id", se=FALSE,
 probs=seq(0.05, 0.95, 0.05))
summary(qd1)

qte documentation built on June 20, 2017, 9:14 a.m.