我正在使用mice
R 中的包来对一些缺失的数据进行乘法估算。我需要能够指定传递给with(df, glm(y ~ x))
函数内部构造的公式。这种with()
结构是包用于在每个估算数据集中mice
分别拟合回归模型的格式。
但是,我无法弄清楚阻止我成功将公式作为参数传递的范围问题。这是一个可重现的示例:
library(mice)
data(mtcars)
mtcars[5, 5] <- NA # introduce a missing value to be imputed
mtcars.imp = mice(mtcars, m = 5)
# works correctly outside of function
with(mtcars.imp, glm(mpg ~ cyl))
fit_model_mi = function(formula) {
with(mtcars.imp, glm(formula))
}
# doesn't work when trying to pass formula into function
fit_model_mi("mpg ~ cyl")
另请参阅此处以了解在 R 帮助上提出的相同问题,尽管它没有收到答案。