【发布时间】:2016-11-11 10:18:59
【问题描述】:
我在使用 klaR 包运行朴素贝叶斯时遇到此错误。
我想共享数据以进行复制,但这样做有一些限制,而且由于我不确定发生了什么,我无法创建一个可以重新创建自己的数据集。我希望读过这篇文章的人之前可能遇到过并克服了这个错误。
这是错误:
Error in if (any(temp)) stop("Zero variances for at least one class in variables: ", :
missing value where TRUE/FALSE needed
我已经在网上找到了一些关于此的帖子: here 和 here
据我所知,我的数据中有一些级别有 1 个或 0 个实例。
问题是我找不到任何东西。我试过这个:
sapply(df, function(x) table(x))
查看是否有任何返回的表显示零或一的实例,但有近 400 个虚拟变量,我看不到任何 - 至少有几个我可以看到的 0 或 1 因子水平的实例。
是否可以告诉 R 突出显示导致问题的级别?我不确定我的下一步行动,因为我找不到任何可能是罪魁祸首的关卡。
【问题讨论】:
-
零方差也意味着,您可以拥有相同的数字但多次?!这有帮助吗?
-
该错误来自您的代码还是功能代码?无论哪种情况,
which(is.na(temp))都可以帮助您找到问题。 -
@sebastian-c 它来自函数代码,因此不确定如何访问变量 temp。它来自基于 Niave Bayes 的 KlaR 包的这个 step model
标签: r naivebayes