所以我正在尝试进行倾向得分匹配,然后利用 Zelig 对匹配的数据执行逻辑回归。
这是我的数据的示例: DATA
所以我试图根据痴呆症、中风和年龄来匹配患者。然后,我试图查看药物 X 是否与患者匹配后跌倒风险增加有关。然后,我想对药物 Y 和药物 Z 进行相同的过程,以查看每种药物是否有关联。
这是迄今为止我用来执行匹配和逻辑回归分析的代码:
data <- read_csv("Desktop/data.csv")
View(data)
attach(data)
data[1:10,]
m.out = matchit(Fall ~ Dementia + Stroke + Age, method = "exact", data = data)
m.data = match.data(m.out)
library(Zelig)
z.out = zelig(Fall ~ Drug X + Dementia + Stroke + Age, model = "logit", data = m.data)
x.out0 <- setx(z.out, Drug X = 0)
x1.out0 <- setx(z.out, Drug X = 1)
s.out0 <- sim(z.out, x = x.out0, x1 = x1.out0)
直到最后一行,一切似乎都很顺利。这是我不断收到的错误消息。
Error in eigen(Sigma, symmetric = TRUE) :
infinite or missing values in 'x'
任何想法我做错了什么?我已经被困在这里一段时间了,决定寻求帮助。
提前致谢。