2

I am trying to use Coarsened Exact Matching using the package MatchIt. By default, the matching ratio is not 1 to 1, and I was wondering whether it is possible to set it to 1 to 1. In CEM, that is possible using the k2k command. However, I fail to do something similar with MatchIt.

On the manual for MatchIT, it seems that would be possible:

Additional Arguments for Coarsened Exact Matching The available options are listed here: • cutpoints named list each describing the cutpoints for the variables. Each list element is either a vector of cutpoints, a number of cutpoints, a method for automatic bin contruction. • k2k return k-to-k matching? • verbose controls level of • ...: additional minor inputs that can be passed to the cem() function in the cem package. See help(cem) or http://gking.harvard.edu/cem for details.

But if I add to the matchit model: k2k=TRUE, it does not work.

I need to do it with MatchIt and not directly with CEM Package, as I am also trying other matching options and need to use the same methods for assessing covariate balance, sensitivity analysis, outcome analysis, and it is easier if I can consistently use the same package, and thus match it objects.

Paula R
  • 33
  • 5
  • `ratio = 1`. I think you may need to specify `replace = FALSE` for matching without replacement as well (if that's what you want). – Noah Jan 22 '19 at 01:36
  • Hi Noah. Thanks for your answer. The "cem" method in MatcIt does not read the argument ratio=1, and when I add replacement=F, it says "unused argument". – Paula R Jan 31 '19 at 11:25
  • You're right, `ratio` isn't accepted with `method = "cem"`. According to the `matchit()` code, `k2k` should work as an argument so I'm not sure why it doesn't work. How do you know it is not working as intended? Note that if you want to specify an argument to `method` in `cem()`, you need to use `k2k.method` in `matchit()`. – Noah Jan 31 '19 at 18:46
  • I was not writing it as k2k.method, but directly "k2k=T". I know it was not working because in the summary of the matching I see that the sample size of treatment and control differ. I have just tried writing "k2k.method=T" (e.g. matchit(formula = Treat ~ C1 + c2 +C3 + C4 , data = mydata, method = "cem", k2k.method = T) ) and it still does not work. Summary shows that the sample sizes for treatment and control are not the same. – Paula R Feb 01 '19 at 19:54
  • @PaulaR Do you have any further thoughts about it? – Orion Aug 07 '19 at 14:40

0 Answers0