我在使用“老鼠”库中的鼠标功能输入缺失病例时出现以下错误
Error in nnet.default(X, Y, w, mask = mask, size = 0, skip = TRUE, softmax = TRUE, :
too many (1104) weights
问题由函数mice.impute.polr
和mice.impute.polyreg
生成,因为默认的最大权重数。
我无法通过使用命令substitute
来解决它,也无法通过复制函数的代码并编写新函数mice.impute.polr
和mice.impute.polyreg
(因为函数我找不到调用{{1} }})。
我告诉过我应该去源代码修改它。
我该怎么办?还有其他解决方案吗?
答案 0 :(得分:5)
由mice()
调用的神经网络函数正在停止,因为"最大允许的权重数量"已超出。 nnet的MaxNWts
参数可以防止运行需要很长时间才能完成的代码。
如果您不介意等待,则可以通过将MaxNWts
参数直接传递给mice()
来增加nnet()
参数,mice(data = df_with_nas, MaxNWts = 2000)
选择该参数:
{{1}}
答案 1 :(得分:0)
我遇到了同样的问题。我发现一个因子变量有10个以上的水平。删除此var后,错误消失了。
答案 2 :(得分:0)
通过nnet.MaxNWts参数
增加鼠标中的MaxNWtsmice(data = df_with_nas, nnet.MaxNWts = 2000)
这在小鼠插补功能的文档中有描述,例如: mice.impute.polr