首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用方法'pmm‘,同时从推算中排除变量

使用方法'pmm‘,同时从推算中排除变量
EN

Stack Overflow用户
提问于 2018-09-17 21:55:49
回答 1查看 161关注 0票数 1

我目前正在使用'pmm‘方法输入R包mice的数据。最小工作示例(给定加载的数据集和正确指定的变量):

代码语言:javascript
复制
library(mice)
Example_imp <- mice(Example_data, m = 5, maxit = 50, method = "pmm", seed = 500)

我还想从估算中排除一些变量(社会人口统计变量)。它们应该被用作预测值,但它们没有缺失值,这就是为什么对它们没有必要进行推算。我找到了一种指定方法的方法,以便将指定的变量排除在推算之外:

代码语言:javascript
复制
init <- mice(Example_data, maxit = 0) 
meth <- init$method
meth[c("Age", "Nationality", "Gender", "Educ")]=""
Example_imp2 <- mice(Example_data, m = 5, maxit = 50, method = meth, seed = 500)

但是当我输入数据时,我只能指定一次“方法”,也就是说,我指定了method = "pmm"method = meth。我不能“双重指定”它。那么,我如何使用pmm方法,为什么仍然将一些变量排除在推算之外,而只将它们用作预测值呢?

EN

回答 1

Stack Overflow用户

发布于 2018-09-18 01:27:09

您需要在mice()中设置predictorMatrix值

例如,nhanes数据集:

代码语言:javascript
复制
   age  bmi hyp chl
1   1   NA  NA  NA
2   2 22.7   1 187
3   1   NA   1 187
4   3   NA  NA  NA

所有变量都用于补偿的默认预测矩阵如下所示:

代码语言:javascript
复制
     age hyp chl
age   0   1   1
hyp   1   0   1
chl   1   1   0

例如,如果不需要估算chl,则需要将chl行设置为全0,然后将以下代码设置为您的predictorMatrix

代码语言:javascript
复制
    age hyp chl
age   0   1   1
hyp   1   0   1
chl   0   0   0
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52369448

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档