我看到+0L在问题的答案中使用,并发现它适用于矩阵/数据帧/数据表,其中as.integer()无法保留初始数据类.
> a <- matrix(TRUE, nrow=3, ncol=3)
> a
[,1] [,2] [,3]
[1,] TRUE TRUE TRUE
[2,] TRUE TRUE TRUE
[3,] TRUE TRUE TRUE
> as.integer(a)
[1] 1 1 1 1 1 1 1 1 1
> a+0L
[,1] [,2] [,3]
[1,] 1 1 1
[2,] 1 1 1
[3,] 1 1 1
Run Code Online (Sandbox Code Playgroud)
[编辑:]评论中有很多智慧!显然有很多不同的方法可以达到相同的效果,其中一些我不知道,所以:
a+0L呢?r ×1