我有四个20位数的字符
我想将字符转换为数字
我刚刚使用as.numeric函数转换
但是四个字符都是一样的。
为什么呢?
我需要数字。有办法吗?
tmp <- c("11240690100051000001", "11240690100051000002", "11240690100051000003", "11240690100051000004")
tmp1 <- as.numeric(tmp)
tmp1[1] == tmp1[2]
[1] TRUE
tmp1[1] == tmp1[3]
[1] TRUE
tmp1[1] == tmp1[4]
[1] TRUE
答案 0 :(得分:3)
您可以使用Rmpfr
包:
tmp <- c("11240690100051000001",
"11240690100051000002", "11240690100051000003",
"11240690100051000004")
library("Rmpfr")
as.bigz(tmp)
## Big Integer ('bigz') object of length 4:
## [1] 11240690100051000001 11240690100051000002 11240690100051000003
## [4] 11240690100051000004
...但这可能会严重限制您随后可以使用这些值进行的操作。关于为什么你需要这些作为数字/你计划用它们做什么的问题的更多背景可能会带来更多有用的答案......