在 R 中使用 violededits 时的公差目的

Purpose of tolerance when using violatededits in R

抱歉,如果这个问题已经得到解答。我搜索了一下,但找不到任何相关内容。

我在 R 中使用 editrules 包 - 并使用 violatedEdits 验证一些规则。我在查看帮助页面时注意到有一个公差参数。有人可以向我解释一下这个公差论点的用途吗?

我的讲义中有一个例子,在检查两个值之和是否等于第三个值时,将公差更改为 0.000001。看起来那里有一些 NA 值,还有一些错误报告的违规行为。一旦将公差设置为上述值,violatedEdits 报告没有违反规则。 (并且还报告有多少因缺失值而被评估为 NA)。

您可以从 ?violatedEdits 中了解其工作原理。 violatedEdits 执行以下操作:

For rules of the form Ax == b |Ax - b| <= tol is returned.

For rules of the form Ax < b, Ax - b < tol is returned.

For rules of the form Ax <= b Ax- b <= tol is returned.

其中 tol 是您所指的公差参数。

换句话说,tol 是容忍度,它允许违反为 tol 指定的数量的规则(在某些情况下默认等于 0,并且等于其他人的机器精度)。通过使 tol 大于 0,你的讲义中的例子表明,在违反规则的情况下,它被认为没有违反,因为 tol > 违反了它的数量违反了。