【发布时间】:2012-10-31 02:28:13
【问题描述】:
【问题讨论】:
-
最常见的FAQ 7.32:stackoverflow.com/questions/9508518/…
标签: r comparison
【问题讨论】:
标签: r comparison
这是经典的R FAQ 7.31。你需要all.equal
【讨论】:
这与浮点精度有关。本质上存在无限数量的浮点,在计算机中表示它们只能离散地完成,因此精度有限。要考虑这种有限的精度,请使用all.equal 进行比较。正如@RomainFracois 所说,这是 R 中非常常见的问题。
【讨论】:
您可以创建自己的二元运算符来完成您的工作并将它们存储在您的 .Rprofile 中:
`%>=%` <- function(x, y) all.equal(x, y) | x > y
`%<=%` <- function(x, y) all.equal(x, y) | x < y
c(1-.9)>=.1
c(1-.9)%>=% .1
【讨论】:
~= 会是一个更好的名字。