我刚才在R中观察到的一种bizzarre行为。
开始于:
d <- data.frame(x = rep(seq(1, 20, 0.2), 10))
subset(d, d$x == 17.4)
没有返回任何内容,即使17.4明显在数据框中。同样适用于18.4和其他一些值。
同样的事情:
x <- seq(1, 20, 0.2)
print(17.4 %in% x)
返回FALSE。
在ideone.com上查看,所以我的翻译或其他任何问题都没有问题。
有趣的是,如果将17.4视为字符串,那么
"17.4" %in% x
返回TRUE。
在这种情况下,x [83]为17.4,str(x [83])和str(17.4)当然是“#”;但是:
x[83] == 17.4
返回FALSE。
我对这个小东西的含义感到非常困惑。