Gary King Homepage Previous: Identifying Common Support in Up: Identifying Common Support in Next: Hypothetical Data

U.N. Peacekeeping

In Section 2.4 of King & Zeng (2007), the seven fully observed countries that experienced a U.N. peacekeeping mission comprise the treatment group while the remaining 115 fully observed (and 117 non-fully observed) countries that lacked a U.N. peacekeeping mission constitute the control group. Cases of the former type receive a coding of `1' on the key causal variable, untype4, while cases of the latter type are coded `0'.

When estimating the average treatment effect on the treated, we discard controls with observed covariate data not within the convex hull of the data for the treated as follows:

  > my.result.cntrl <- whatif(formula = ~ decade + wartype + logcost +  
  + wardur + factnum + factnumsq + trnsfcap + treaty + develop + exp, 
  + data = peacef[peacef$untype4 == 1,], cfact = peacef[peacef$untype4 == 0,])
This command feeds the seven treated countries to the parameter data and the 117 control countries to the parameter cfact. This differs from the last section, where data contained all 124 observed data points, whether treated or not. The parameter formula allows us to drop untype4 from the two data frames, which we do by naming all of the variables that we want to keep. (We eliminate this variable since our goal is to identify the convex hull of the observed pre-treatment covariates.) Note that we do not specify a dependent variable in the formula. We then look at the results:
  > my.result.cntrl$in.hull
The control group countries not on the support of the treated countries are those with FALSE entries--in this case, all 115. Note that for this data and call, two messages designed to inform the user about choices made by whatif in the face of problematic data are printed to the screen. The first informs us that whatif has deleted the two control group cases with missing values from the cfact data set since counterfactuals must be fully observed. The second, ``range of at least one variable equals zero'', informs us that data contains a degenerate case: the variable treaty has no variance (and hence a range of zero) in the observed covariate data set of the treated countries. In order to calculate the Gower distances, whatif must make assumptions about the handling of such variables. Specifically, it ignores their contribution unless the values of the data point and counterfactual are identical, in which case the normalized difference is set to zero.

A different, but perhaps more reliably estimable quantity, may often be obtained by also dropping observations in the treatment group whose observed covariate data falls outside of the convex hull of the control group. Any countries remaining comprise the data set that lies on the common support. Both the prior and this second step can be performed simultaneously using WHATIF as originally described in Section 3.1 for evaluating counterfactuals. Accordingly, we type:

  > peacef2cf <- peacef
  > peacef2cf$untype4 <- 1 - peacef2cf$untype4
  > my.result.comb <- whatif(data = peacef, cfact = peacef2cf)
Here, we initially create the counterfactual data set peacef2cf directly from the factual, replacing untype4 with 1 - untype4. We could also have supplied the data set peacecf, originally constructed in a similar manner. (The data sets would be identical if the two counterfactuals with missing data were list-wise deleted from peacef2cf.) We now look at the results of the convex hull test as before and see that none of the counterfactuals are in the convex hull. Hence, there is no data on the common support of both the treatment and control groups.



Gary King 2010-08-12