matchdef {Matchit}R Documentation

Nearest neighbor matching algorithm

Description

This is a sub-function of matchit which performs the nearest neighbor matching; matchdef is called automatically by matchit.

Usage

matchdef <- matchdef(formula, in.sample, pscore, covariates, nearest=TRUE, replace=FALSE, 
                m.order=2, ratio=1, caliper=0, calclosest=FALSE, mahvars=NULL, exact=FALSE, 
                data=NULL, counter=TRUE)

Arguments

formula (required). Takes the form of T ~ X1 + X2, where T is a binary treatment indicator and X1 and X2 are the pre-treatment covariates, and T, X1, and X2 are contained in the same data frame. The + symbol means "inclusion" not "addition." You may also include interaction terms in the form if I(X1*X2) or squared terms in the form of I(X1^2).
data Data frame containing the variables in formula.
in.sample Vector of length n showing whether each unit was eligible for matching due to common support restrictions with discard. Computed in distance.
pscore Vector of propensity scores, calculated in distance.
covariates Covariates from data frame used in matching process. Output from distance.
nearest Whether to perform nearest-neighbor matching (default=TRUE).
replace Whether to match with replacement (default=FALSE).
m.order Order in which to match treated units with control units. 2 (default)=from high to low, 3=from low to high, 4=random order.
ratio The number of control units to be matched to each treated unit (default=1).
caliper Standard deviations of the propensity score within which to draw control units (default=0).
calclosest If caliper!=0, whether to take the nearest available match if no matches are available within caliper (default=FALSE).
mahvars Variables on which to perform Mahalanobis matching within each caliper (default=NULL). Should be entered as a vector of names of variables in data.
exact "FALSE" (default)=no exact matching. "TRUE"=exact matching on all variables in formula. A vector of variable names (that are in data) to indicate separate variables on which to exact match, in combination with matching on the propensity score.
counter Whether to display counter indicating the progress of the matching (default=TRUE).

Details

The matching is done using nearest neighbor matching on the propensity score, estimated in the sub-function ref{distance}. This function is called directly by matchit and does not generally need to be called directly by users; these details are included for advanced users.

Value

match.matrix n1 by ratio data frame where the rows correspond to treated units and the columns store the names of the control units matched to each treated unit. NA indicates that treated unit was not matched.
in.sample Vector of length n showing whether each unit was eligible for matching due to common support restrictions with discard.

Author(s)

Daniel Ho <deho@fas.harvard.edu>; Kosuke Imai <kimai@princeton.edu>; Gary King <king@harvard.edu>; Elizabeth Stuart<stuart@stat.harvard.edu>

See Also

Please use help.matchit to access the matchit reference manual. The complete document is available online at http://gking.harvard.edu/matchit.


[Package Contents]