小编Hon*_*ore的帖子

比较数字和整数值有时给出 TRUE,有时给出 FALSE

我用来比较两个列表,一个列表包含数值%in%向量,另一个列表包含相应的整数值。结果真的很奇怪;有时有时,我不明白为什么。TRUEFALSE

例如下面的代码给出TRUE

list(c(1, 1)) %in% list(c(1L, 1L))
Run Code Online (Sandbox Code Playgroud)

但是,如果我们将向量中的第二个数字更改为 2 和 2L,我们会得到FALSE

list(c(1, 2)) %in% list(c(1L, 2L))
Run Code Online (Sandbox Code Playgroud)

将第二个数字更改为 3 或 4TRUE再次给出。

list(c(1, 3)) %in% list(c(1L, 3L))
list(c(1, 4)) %in% list(c(1L, 4L))
Run Code Online (Sandbox Code Playgroud)

再次使用其他一些值会产生结果FALSE,但我看不到任何模式。例如,使用 8 和 9 结果为FALSE

list(c(8, 9)) %in% list(c(8L, 9L))
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么会这样?这真的令人困惑,我完全不明白为什么会发生这种情况。

integer r numeric

4
推荐指数
1
解决办法
99
查看次数

标签 统计

integer ×1

numeric ×1

r ×1