我一直在使用R中的MatchIt包进行处理与控制匹配,我无法获得最佳匹配以使用我自己的数据集。
如果我运行以下代码:
import Card from './Card.vue'
其中公式为
m.out <- matchit(match_formula, data=stats, method='optimal', distance='logit', ratio=2)
然后我最终得到了错误
treatment ~ t_1 + t_2 + t_3 + t_4 + t_5 + t_6 + t_7 + t_8 + t_9 +
t_10 + t_11
我无法在Error in fullmatch.matrix(d, min.controls = ratio, max.controls = ratio, : omit.fraction must be NULL or numeric between -1 and 1
方法中的任何位置找到omit.fraction变量或甚至是什么。有没有办法解决这个错误并执行最佳匹配?
答案 0 :(得分:3)
想出来!
因为我有比治疗单位更多的控制,optmatch
无法将所有控制单位分配到至少一次治疗,这导致了上述错误。解决方案是切换对照和治疗群体并使用匹配比率1以使所有对照单元与治疗单元匹配。
奖金:最佳匹配比最近的邻居更合适#34;匹配,我想这是预期的。