我使用多重插补开发了一个模型。我希望使用此模型来预测新观测值的响应(不包含缺失数据),包括标准误差。将在中创建的模型对象传递给
以内置的数据集为例,我想要开发一个逻辑回归模型,其形式为
predict
无法实现。以内置的数据集为例,我想要开发一个逻辑回归模型,其形式为
age == 3 ~ bmi + hyp + chl
,并使用该模型来预测,例如,当时,prob(age = 3)
。library('mice')
imp<-mice(nhanes, seed = 1)
#create model on each imputed dataset
model <- with(imp, glm(age == 3 ~ bmi + hyp + chl, family = binomial))
#pool models into one
poolmodel <- pool(model)
#new data
newdata <- data.frame(bmi = 20, hyp = 2, chl = 190)
#attempt to predict response using predict() function
pred <- predict(object = model, newdata = newdata, type = 'link', se.fit = TRUE)
使用方法("predict")出错: 对象类别为"c('mira', 'matrix')",无适用于预测的方法
pred <- predict(object = poolmodel, newdata = newdata, type = 'link', se.fit = TRUE)
使用方法"predict"的错误:无法应用于"class 'mipo','mira','matrix'"类别的对象
显然,使用汇总系数和汇总协方差矩阵手动计算预测响应和误差是很简单的。然而,实际问题要复杂得多,模型依赖于一些样条函数和交互作用,这使得计算变得相当复杂。我更愿意使用现有的函数来完成所有这些工作。
在R中是否有一个简单的解决方案,可以输出任何给定(汇总)模型对象和任何给定新观察值集的预测响应,而不必进行繁琐的代码修改?