*! version 1.0.1 28nov2012

Title

Potential outcome parameter estimation

Syntax

poparms (treatvar gpsvars) (depvar cvars) [if] [in]
[, options]

options

quantiles(numlist) estimate specified quantiles

vce(vcetype [, vceoptions]) vcetype may be
bootstrap, analytic, or none.

analytic is the default when quantiles() is not
specified. bootstrap is the default when quantiles() is
specified.

vceoptions vary over vcetype and are discussed
below.

ipw use inverse-probability-weighted (IPW) estimator instead
of default efficient-influence-function (EIF) estimator

gpsvars and cvars may
contain time-series operators; see fvvarlist.

Description

poparms estimates parameters of the potential-outcome distributions in
causal inference.

The estimators implemented in poparms were derived in
Cattaneo(2010).
Cattaneo, Drukker, and Holland (2012)
provides an introduction to this command.

Options

quantiles() specifies the quantiles of the potential outcome
distributions that are to be estimated jointly with the means. By default,
only the means are estimated. By default, method vce(bootstrap) is
used when quantiles() is specified. We strongly recommend not using
vce(analytic) when quantiles() is specified.

vce() specifies the method used to estimate the variance-covariance of
the estimator.

vce:(vcetype [, vceoptions])} specifies the
vcetype and the type specific options.

When specifying vce(bootstrap), the vceoption is
reps(#) which specifies the number of bootstrap repetitions which must
be integer that is at least 50.

With method analytic, the vceoptions are
bwscale(#)), bwidths(matname), and
densities(matname). These suboptions are mutually
exclusive.

By default, poparms uses an analytic estimator when only
means are estimated and it uses a bootstrap estimator when quantiles are
estimated. We recommend not using the analytic method when quantiles are
specified because this method performed poorly in Monte Carlo simulations.

With method bootstrap, you may change the number of repetitions from
the default 2000 by specifying vce(bootstrap , reps(#)).
The specified number of repetitions must an integer greater than 49.

With method analytic, you may rescale the bandwidths used to
estimate the densities by specifying
vce(analytic, bwscale(#)).
The specified number must be in the interval [.1, 10].

With method analytic, you may specify the bandwidths used to
estimate the densities by specifying
vce(analytic, bwidths(matname)), where matname
specifies a Stata row vector with the number of columns equal to the number
of quantiles times the number of treatment levels.

With method analytic, you may specify the densities used
vce(analytic, densities(matname)), where matname
specifies a Stata row vector with the number of columns equal to the number
of quantiles times the number of treatment levels.

ipw specifies that poparms use the IPW estimator instead
of the default EIF estimator. The methods and differences are described
in
Cattaneo, Drukker, and Holland (2012).

coeflegend; see
[R] estimation options.

Examples

Setup

. use spmdata

Mean estimation

. poparms (w pindex eindex) (spmeasure pindex eindex)

Mean estimation with polynomial for conditional mean

. poparms (w pindex eindex) (spmeasure c.(pindex eindex)#c.(pindex eindex))

Mean and quantile estimation with polynomial for conditional
mean

This example limits the number of of bootstrap repetitions to 50 so
that the example runs relatively quickly. We recommend using at least the
default of 2000 repetitions in practice.

. poparms (w pindex eindex) (spmeasure c.(pindex eindex)#c.(pindex eindex)), quantiles(.25 .75) vce(bootstrap, reps(50))

Saved results

poparms saves the following in e():

Scalars

e(N) number of observations

e(k) number of variables in conditional mean

e(bwscale) scale for bandwidths, if specified

e(reps) number of requested bootstrap repetitions, if specified}

e(bsreps) number of successful bootstrap repetitions, if specified}

Macros

e(cmd) poparms

e(cmdline) command as typed

e(depvar) name of dependent variable

e(title) title in estimation output

e(title2) second title in estimation output

e(vce) vcetype specified in vce()

e(vcetype) title used to label Std. Err.

e(quantiles) specified quantiles

e(properties) b V or b if vce(none)

e(predict) program used to implement predict

Matrices

e(b) coefficient vector

e(V) variance-covariance matrix of the estimators

e(V1) outer product Psi functions used in variance

Functions

e(sample) marks estimation sample

References

Cattaneo, M. D. 2010. Efficient Semiparametric Estimation of Multi-valued
Treatment Effects under Ignorability. Journal of Econometrics 155(2):
138-154.
http://www.sciencedirect.com/science/article/pii/S030440760900236X

Cattaneo, M. D., D. M. Drukker, and A. Holland. 2012.
Estimation of multivalued treatment effects
under conditional independence.
Working paper, University of Michigan, Department of Economics,
http://www-personal.umich.edu/~cattaneo/papers/Cattaneo-Drukker-Holland_2012_STATA.pdf.

Authors

Matias D. Cattaneo, University of Michigan, Ann Arbor, MI.
cattaneo@umich.edu.

David M. Drukker, StataCorp, College Station, TX.
ddrukker@stata.com.

Ashley D. Holland, Grace College, Winona Lake, IN.
hollana@grace.edu.