[英]How do I convert 64-bit hexadecimal strings in R?
如何在R中轉換64位十六進制字符串?
> library(int64)
> as.int64("7f2d36a2a000")
[1] NA
Warning message:
In as.int64("7f2d36a2a000") : NAs introduced
> as.int64("0x7f2d36a2a000")
[1] NA
Warning message:
In as.int64("0x7f2d36a2a000") : NAs introduced
這是使用bit64
的一種方式。
library(bit64)
str <- "7f2d36a2a000"
as.integer64(as.numeric(paste0("0x",str)))
# integer64
[1] 139832166883328
對於數字很大的數字,您需要加載一個支持任意大數字表示的包。 Rmpfr就是一個例子:
library(Rmpfr)
## Check that it works as expected on smaller numbers:
strtoi("ff", base=16)
# [1] 255
mpfr("ff", base=16)
# 1 'mpfr' number of precision 8 bits
# [1] 255
as.integer(mpfr("ff", base=16)
# [1] 255
## Then apply it with (more) confidence to larger numbers:
mpfr("7f2d36a2a000", base=16)
# 1 'mpfr' number of precision 48 bits
# [1] 139832166883328
mpfr("7f2d36a2a0007f2d36a2a0007f2d36a2a0007f2d36a2a000", base=16)
# 1 'mpfr' number of precision 192 bits
# [1] 3118361524223520784583964884878580812558070356334996529152
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.