使用推算数据集的svydesign出错

时间:2017-02-28 07:14:05

标签: r survey r-mice

我正在使用svydesign分析插补数据集但我收到错误。以下是代码:

library(mitools)

library(survey)

data(nhanes)

nhanes$hyp <- as.factor(nhanes$hyp)

imp <- mice(nhanes,method=c("polyreg","pmm","logreg","pmm"), seed = 23109)

des<-svydesign(id=~1, strat=~age, data=imputationList(imp))


Error in as.data.frame.default(data, optional = TRUE) : cannot coerce class ""call"" to a data.frame

我正在关注此页面的教程: http://r-survey.r-forge.r-project.org/survey/svymi.html

如何修改代码才能使用?

编辑:

我将data=imputationList(imp)更改为data=complete(imp,1),我能够使代码正常工作。然而,这是没有效率的,因为我必须对我所有的估算集进行此操作。使用imputationList时会有什么问题吗?

1 个答案:

答案 0 :(得分:0)

BlockController<WeekletterBlock>生成结果,mice()需要包含估算值的所有五个imputationList的列表,但您需要使用data.frame来构建这五个已完成的{ {1}}对象

mice::complete