【发布时间】:2018-12-19 15:46:24
【问题描述】:
我正在尝试在协变量子集上使用 lm() 和 matchit()。我已经生成了任意数量的带有前缀“covar”的列,即“covar.1”、“covar.2”等。我想做类似
lm(group ~ covars, data=df)
其中 covars 是字符串向量 c("covar.1", "covar.2", ...)。
我尝试了几种方法,例如
cols <- colnames(df)
covars <- cols[grep("covar", colnames(df))]
m.out <- matchit(group ~ covars, data=df, method="nearest", distance="logit", caliper=.20)
但是得到了variable lengths differ (found for 'covars')。
仅使用 covars 和 group 定义一个新的数据框是可行的,但这违背了我使用 matchit 的目的,因为我希望匹配的数据也有其他列,而不仅仅是我选择匹配的 covars。
这似乎是一项容易的任务,但不知何故,经过一番谷歌搜索后我无法弄清楚。不确定作为列子集的 R 公式期望什么。任何帮助表示赞赏。
【问题讨论】: