# NOT RUN {
########## Matching ##########
library(Matching); data("lalonde", package = "cobalt")
p.score <- glm(treat ~ age + educ + race +
married + nodegree + re74 + re75,
data = lalonde, family = "binomial")$fitted.values
Match.out <- Match(Tr = lalonde$treat, X = p.score)
## Using formula and data
bal.tab(Match.out, treat ~ age + educ + race +
married + nodegree + re74 + re75, data = lalonde)
# }
# NOT RUN {
########## optmatch ##########
library("optmatch"); data("lalonde", package = "cobalt")
lalonde$prop.score <- glm(treat ~ age + educ + race +
married + nodegree + re74 + re75,
data = lalonde, family = binomial)$fitted.values
pm <- pairmatch(treat ~ prop.score, data = lalonde)
## Using formula and data
bal.tab(pm, treat ~ age + educ + race +
married + nodegree + re74 + re75, data = lalonde,
distance = "prop.score")
# }
# NOT RUN {
########## ebal ##########
library("ebal"); data("lalonde", package = "cobalt")
covariates <- subset(lalonde, select = -c(re78, treat, race))
e.out <- ebalance(lalonde$treat, covariates)
## Using treat and covs
bal.tab(e.out, treat = lalonde$treat, covs = covariates)
# }
# NOT RUN {
########## designmatch ##########
# }
# NOT RUN {
library("designmatch"); data("lalonde", package = "cobalt")
covariates <- as.matrix(lalonde[c("age", "educ", "re74", "re75")])
treat <- lalonde$treat
dmout <- bmatch(treat,
total_groups = sum(treat == 1),
mom = list(covs = covariates,
tols = absstddif(covariates,
treat, .05))
)
## Using treat and covs
bal.tab(dmout, treat = treat, covs = covariates)
# }
Run the code above in your browser using DataLab