简洁的方法来测试X是否在Y +/-小容差范围内?

SFu*_*n28 2 r

是否有一种简洁的方法来测试某个数字X是否在另一个数字Y的范围内加上或减去一些小的容差?

Ite*_*tor 9

all.equal命令允许tolerance参数,以便忽略小于公差值的差异.

就个人而言,我更喜欢all.equal作为替代品identical,因为它提供了更多信息.它适用于比一个值更通用的对象(例如variable1和variable2),例如数据框,列表等.因此,虽然它可以解决您的问题,但是当您想要考虑两个数据帧是否几乎相同时,它也更为通用.当差异基于非常接近机器公差的数值精度问题时,这非常有用.

  • @ SFun28:对于`if`语句,用`isTRUE`包装`all.equal`,不,'same`没有容差; 它测试相同性,而不是相等(如果这有意义的话). (4认同)
  • FWIW,all.equal vs. same vs. ==在CRAN总部的R-FAQ中广泛涵盖. (2认同)