我有两列包含数据。在比较这些列时,我得到FALSE
了这一行的回报,这让我很困惑。
dat[82,"UG_accept_avg_total.x"]
## [1] 1.842105
dat[82,"UG_accept_avg_total.y"]
## [1] 1.842105
dat[82,"UG_accept_avg_total.x"]==dat[82,"UG_accept_avg_total.y"]
## [1] FALSE
我阅读了这个问题的答案,它解释了为什么会出现我的问题,但答案对我没有多大帮助,因为:
all.equal(dat[82,"UG_accept_avg_total.x"],dat[82,"UG_accept_avg_total.y"])
## "Mean relative difference: 1.427714e-07"
isTRUE(all.equal(dat[82,"UG_accept_avg_total.x"],dat[82,"UG_accept_avg_total.y"]))
## [1] FALSE
我可以去掉小数点后的一些数字,因为 3 可能就足够了,但是检查我的数据集中的所有数据字段(超过 250000)来做到这一点将是相当浪费资源的使用。有人有更好的建议吗?有没有办法降低 isTRUE(all.equal(x,y)) 的“灵敏度”?