为什么identical(c(1:3), c(1, 2, 3))
为假?换句话说,为什么前者是整数而后者是双精度数?
最佳答案
R> class(1:3)
[1] "integer"
R> class(c(1,2,3))
[1] "numeric"
R>
简而言之,
:
作为序列运算符将返回整数“因为这是人们真正想要的”。因此:
R> identical(1:3, c(1L,2L,3L))
[1] TRUE
R> identical(1*(1:3), c(1,2,3))
[1] TRUE
R>