【发布时间】:2020-05-28 12:05:06
【问题描述】:
您好,我想通过调整倾向得分来进行逻辑回归。但首先我想根据倾向得分来匹配条约和非条约。这是我的第一个脚本:
mod_match<-matchit(Treatment~Prop.score, method = "nearest", data = Epidemio.prop,caliper = 0.05)
这里是错误信息
matchit 中的错误(Treatment~Prop.score, method = "nearest", data = Epidemio.prop, : 数据中存在缺失值
因此,我从模型中删除了所有其他变量,除了两个没有缺失数据的感兴趣变量。
mod_match<-matchit(Treatment~Prop.score,
method = "nearest", data = Epidemio.prop[c("Treatment","Prop.score")],
caliper = 0.1)
我仍然有错误消息。
weights.matrix(match.matrix,treat,discarded) 中的错误:没有单位 已匹配此外:警告消息:
1:在 max(pscore[treat == 0]) 中:max 没有非缺失参数; 返回 -Inf
2:在 max(pscore[treat == 1]) 中:max 没有非缺失参数; 返回 -Inf
3:在 min(pscore[treat == 0]) 中:min 没有非缺失参数; 返回Inf
4: 在 min(pscore[treat == 1]) 中:min 没有非缺失参数; 返回Inf
【问题讨论】:
-
始终明确说明任何非基础 R 函数来自哪些包。我在标题中添加了对包
MatchIt的引用(我认为这是您一直在使用的)。另请注意,使用全大写会被视为大喊大叫。 -
@MauritsEvers 感谢您的建议。但我也尝试了你提出的并没有解决问题。但是当我将变量“Treatment”更改为 0,1 时,它起作用了。
-
我没有提出任何建议。由于缺少样本数据,您的问题/问题无法重现。始终包含最少的样本数据,以便我们重现您遇到的问题。
标签: r propensity-score-matching