在控制台中,继续尝试
> sum(sapply(1:99999, function(x) { x != as.character(x) }))
0
对于 1 到 99999 的所有值,"1" == 1
, "2" == 2
, ...,99999 == "99999"
是TRUE
。然而,
> 100000 == "100000"
FALSE
为什么 R 有这种古怪的行为,这是一个错误吗?例如,检查原子字符向量中的每个元素是否实际上都是数字的解决方法是什么?现在我正在尝试检查是否x == as.numeric(x)
为 each x
,但由于上述问题,在某些数据集上失败了!