About the "distance = NA" issue, please see if this comment helps:

https://lists.gking.harvard.edu/pipermail/matchit/2011-January/000174.html


Furthermore, the Mahalanobis NA distance values are hard-wired in the code, 
file matchit.R:

  ## no distance for full mahalanobis matching
  if(fn1=="distance2mahalanobis"){
    distance[1:length(distance)] <- NA
    class(out2) <- c("matchit.mahalanobis","matchit")
  }


About the resulting MDM matrix, I was able to create some "unmatching" by 
changing T1
so that its values do not always exactly map 1:1 to a pair of values each one 
taken
from the distribution values set control and treated (x1_.., x2_..).

n<-100
set.seed(1023)
x1_contr<-runif(n,0,5)
x2_contr<-runif(n,0,5)
x_contr<-cbind(x1=x1_contr,x2=x2_contr)
x1_treat<-runif(n,1,6)
x2_treat<-runif(n,1,6)

x_treat<-cbind(x1=x1_treat,x2=x2_treat)

T1<-c(rep(0,n/2),rep(1,3*n/2))

X.all<-rbind(x_contr,x_treat)

my.data<-data.frame(T1,X.all)
rownames(my.data)<-paste("ID",1:dim(my.data)[1])

library(MatchIt)
mdm.out<-matchit(T1~x1+x2,data=my.data, method="nearest", 
distance="mahalanobis",
                 mahvars=c("x1","x2"), caliper=0.15, replace=FALSE)

Sample sizes:
          Control Treated
All            50     150
Matched        50      50
Unmatched       0     100
Discarded       0       0


Hope this helps.

--

GG

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to