我正在处理一个价格文件,该文件有许多缺少的周末值。我正在使用鼠标功能来估算周末的价格。如果包含日期,mice函数不允许非数字值和错误输出。这就是我使用2:33的原因,但是我需要一个日期,这样我才能将它连接回另一个文件。我曾尝试将日期转换为数字,但在过程结束时反向转换会产生NAs。寻找建议,以保持数据帧中的日期。
上面的链接包含数据集的一个片段。
鼠标函数的代码
归因于<-小鼠(特征,2:33,m=5,maxit = 5,method = 'pmm',seed = 500)
打开一个大的mids
df <- complete(归因于,action = 1L,include = FALSE)
发布于 2019-10-08 21:21:42
这里最简单的解决方案是在估算之前删除数据,然后将日期添加回data.frame。
因为鼠标不会改变列的顺序,所以很容易做到这一点。
作为另一种解决方案,还可以将mice设置为仅在某些列上执行估算/仅使用某些列进行估算。我认为如果您在这里排除日期,也可能不会再抛出错误。参数为:
predictorMatrix
长度(块)行和列(数据)列的数字矩阵,包含指定要用于每个目标列的预测器集的0/1数据。每一行对应于一个变量块,即一组要推算的变量。值为1表示将column变量用作目标块(在行中)的预测器。默认情况下,predictorMatrix是由列和列组成的方阵,除了对角线外,所有的列和行都是1。注意:对于两级补偿模型(其名称中有"2l“),也可以使用其他代码(例如,2或-2)。
但是,第一种解决方案可能更容易执行,只需向后删除和添加列。
https://stackoverflow.com/questions/54427651
复制相似问题