[TE] teffects aipw -- Augmented inverse-probability weighting
Syntax
teffects aipw (ovar omvarlist [, omodel noconstant]) (tvar tmvarlist
[, tmodel noconstant)] [if] [in] [weight] [, stat options]
ovar is a binary, count, continuous, fractional, or nonnegative outcome
of interest.
omvarlist specifies the covariates in the outcome model.
tvar must contain integer values representing the treatment levels.
tmvarlist specifies the covariates in the treatment-assignment model.
omodel Description
-------------------------------------------------------------------------
Model
linear linear outcome model; the default
logit logistic outcome model
probit probit outcome model
hetprobit(varlist) heteroskedastic probit outcome model
poisson exponential outcome model
flogit fractional logistic outcome model
fprobit fractional probit outcome model
fhetprobit(varlist) fractional heteroskedastic probit outcome model
-------------------------------------------------------------------------
omodel specifies the model for the outcome variable.
tmodel Description
-------------------------------------------------------------------------
Model
logit logistic treatment model; the default
probit probit treatment model
hetprobit(varlist) heteroskedastic probit treatment model
-------------------------------------------------------------------------
tmodel specifies the model for the treatment variable.
For multivalues treatments, only logit is available and multinomial logit
is used.
stat Description
-------------------------------------------------------------------------
Stat
ate estimate average treatment effect in population;
the default
pomeans estimate potential-outcome means
-------------------------------------------------------------------------
options Description
-------------------------------------------------------------------------
Model
nls estimate conditional means by nonlinear least
squares
wnls estimate conditional means by weighted nonlinear
least squares
SE/Robust
vce(vcetype) vcetype may be robust, cluster clustvar,
bootstrap, or jackknife
Reporting
level(#) set confidence level; default is level(95)
aequations display auxiliary-equation results
display_options control columns and column formats, row spacing,
line width, display of omitted variables and
base and empty cells, and factor-variable
labeling
Maximization
maximize_options control the maximization process; seldom used
Advanced
pstolerance(#) set tolerance for overlap assumption
osample(newvar) newvar identifies observations that violate the
overlap assumption
control(# | label) specify the level of tvar that is the control
coeflegend display legend instead of statistics
-------------------------------------------------------------------------
omvarlist and tmvarlist may contain factor variables; see fvvarlists.
bootstrap, by, jackknife, and statsby are allowed; see prefix.
Weights are not allowed with the bootstrap prefix.
fweights and iweights are allowed; see weight.
coeflegend does not appear in the dialog box.
See [TE] teffects postestimation for features available after estimation.
Menu
Statistics > Treatment effects > Continuous outcomes> Augmented
inverse-probability weighting
Statistics > Treatment effects > Binary outcomes> Augmented
inverse-probability weighting
Statistics > Treatment effects > Count outcomes> Augmented
inverse-probability weighting
Statistics > Treatment effects > Fractional outcomes> Augmented
inverse-probability weighting
Statistics > Treatment effects > Nonnegative outcomes> Augmented
inverse-probability weighting
Description
teffects aipw estimates the average treatment effect and the
potential-outcome means from observational data by augmented
inverse-probability weighting (AIPW). AIPW estimators combine aspects of
regression-adjustment and inverse-probability-weighted methods. AIPW
estimators have the double-robust property. teffects aipw accepts a
continuous, binary, count, fractional, or nonnegative outcome and allows
a multivalued treatment.
See [TE] teffects intro or [TE] teffects intro advanced for more
information about estimating treatment effects from observational data.
Options
+-------+
----+ Model +------------------------------------------------------------
noconstant; see [R] estimation options.
nls specifies that the parameters of the outcome model be estimated by
nonlinear least squares instead of the default maximum likelihood.
wnls specifies that the parameters of the outcome model be estimated by
weighted nonlinear least squares instead of the default maximum
likelihood. The weights make the estimator of the effect parameters
more robust to a misspecified outcome model.
+------+
----+ Stat +-------------------------------------------------------------
stat is one of two statistics: ate or pomeans. ate is the default.
ate specifies that the average treatment effect be estimated.
pomeans specifies that the potential-outcome means for each treatment
level be estimated.
+-----------+
----+ SE/Robust +--------------------------------------------------------
vce(vcetype) specifies the type of standard error reported, which
includes types that are robust to some kinds of misspecification
(robust), that allow for intragroup correlation (cluster clustvar),
and that use bootstrap or jackknife methods (bootstrap, jackknife);
see [R] vce_option.
+-----------+
----+ Reporting +--------------------------------------------------------
level(#); see [R] estimation options.
aequations specifies that the results for the outcome-model or the
treatment-model parameters be displayed. By default, the results for
these auxiliary parameters are not displayed.
display_options: noci, nopvalues, noomitted, vsquish, noemptycells,
baselevels, allbaselevels, nofvlabel, fvwrap(#), fvwrapon(style),
cformat(%fmt), pformat(%fmt), sformat(%fmt), and nolstretch; see [R]
estimation options.
+--------------+
----+ Maximization +-----------------------------------------------------
maximize_options: iterate(#), [no]log, and from(init_specs); see [R]
maximize. These options are seldom used.
init_specs is one of
matname [, skip copy]
# [, # ...], copy
+----------+
----+ Advanced +---------------------------------------------------------
pstolerance(#) specifies the tolerance used to check the overlap
assumption. The default value is pstolerance(1e-5). teffects will
exit with an error if an observation has an estimated propensity
score smaller than that specified by pstolerance().
osample(newvar) specifies that indicator variable newvar be created to
identify observations that violate the overlap assumption.
control(# | label) specifies the level of tvar that is the control. The
default is the first treatment level. You may specify the numeric
level # (a nonnegative integer) or the label associated with the
numeric level. control() may not be specified with statistic
pomeans.
The following option is available with teffects aipw but is not shown in
the dialog box:
coeflegend; see [R] estimation options.
Examples
---------------------------------------------------------------------------
Setup
. webuse cattaneo2
Estimate the average treatment effect of mbsmoke on bweight, using a
probit model to predict treatment status
. teffects aipw (bweight prenatal1 mmarried mage fbaby) (mbsmoke
mmarried c.mage##c.mage fbaby medu, probit)
Use pomeans and aequations to obtain estimates of both potential-outcome
means and view all the fitted equations underlying our estimates
. teffects aipw (bweight prenatal1 mmarried mage fbaby) (mbsmoke
mmarried c.mage##c.mage fbaby medu, probit), pomeans aequations
Refit the above model, but use heteroskedastic probit to model the
treatment variable
. teffects aipw (bweight prenatal1 mmarried fbaby) (mbsmoke mmarried
c.mage##c.mage fbaby medu, hetprobit(c.mage)), aequations
---------------------------------------------------------------------------
Setup
. webuse cattaneo2
Use WNLS to fit the outcome model shown above
. teffects aipw (bweight prenatal1 mmarried mage fbaby) (mbsmoke
mmarried c.mage##c.mage fbaby medu, probit), wnls
---------------------------------------------------------------------------
Video example
Treatment effects: Augmented inverse-probability weighting
Stored results
teffects aipw stores the following in e():
Scalars
e(N) number of observations
e(nj) number of observations for treatment level j
e(N_clust) number of clusters
e(k_eq) number of equations in e(b)
e(k_levels) number of levels in treatment variable
e(treated) level of treatment variable defined as treated
e(control) level of treatment variable defined as control
e(converged) 1 if converged, 0 otherwise
Macros
e(cmd) teffects
e(cmdline) command as typed
e(depvar) name of outcome variable
e(tvar) name of treatment variable
e(subcmd) aipw
e(tmodel) logit, probit, or hetprobit
e(omodel) linear, logit, probit, hetprobit, poisson, flogit,
fprobit, or fhetprobit
e(stat) statistic estimated, ate or pomeans
e(wtype) weight type
e(wexp) weight expression
e(title) title in estimation output
e(clustvar) name of cluster variable
e(tlevels) levels of treatment variable
e(cme) ml, nls, or wnls
e(vce) vcetype specified in vce()
e(vcetype) title used to label Std. Err.
e(properties) b V
e(estat_cmd) program used to implement estat
e(predict) program used to implement predict
e(marginsnotok) predictions disallowed by margins
e(asbalanced) factor variables fvset as asbalanced
e(asobserved) factor variables fvset as asobserved
Matrices
e(b) coefficient vector
e(V) variance-covariance matrix of the estimators
Functions
e(sample) marks estimation sample