R(鼠标包)出错,重量太多

时间:2015-02-16 22:40:06

标签: r r-mice

我在使用“老鼠”库中的鼠标功能输入缺失病例时出现以下错误

 Error in nnet.default(X, Y, w, mask = mask, size = 0, skip = TRUE, softmax = TRUE,  :
too many (1104) weights

问题由函数mice.impute.polrmice.impute.polyreg生成,因为默认的最大权重数。 我无法通过使用命令substitute来解决它,也无法通过复制函数的代码并编写新函数mice.impute.polrmice.impute.polyreg(因为函数我找不到调用{{1} }})。 我告诉过我应该去源代码修改它。

我该怎么办?还有其他解决方案吗?

3 个答案:

答案 0 :(得分:5)

mice()调用的神经网络函数正在停止,因为"最大允许的权重数量"已超出。 nnetMaxNWts参数可以防止运行需要很长时间才能完成的代码。

如果您不介意等待,则可以通过将MaxNWts参数直接传递给mice()来增加nnet()参数,mice(data = df_with_nas, MaxNWts = 2000)选择该参数:

{{1}}

答案 1 :(得分:0)

我遇到了同样的问题。我发现一个因子变量有10个以上的水平。删除此var后,错误消失了。

答案 2 :(得分:0)

通过nnet.MaxNWts参数

增加鼠标中的MaxNWts
mice(data = df_with_nas, nnet.MaxNWts = 2000)

这在小鼠插补功能的文档中有描述,例如: mice.impute.polr