Вывести большое число в шестнадцатеричном формате

r string-formatting

332 просмотра

1 ответ

787 Репутация автора

Я пытаюсь преобразовать большое число в шестнадцатеричное представление в R, но это не удается, потому что он не может вписаться в 32-разрядное целое число. Есть ли способ преодолеть это ограничение?

> print(0xffffffff+0x10000000)
[1] 4563402751
> as.hexmode(0xffffffff+0x10000000)
Error in if (is.double(x) && (x == as.integer(x))) x <- as.integer(x) : 
  missing value where TRUE/FALSE needed
In addition: Warning message:
In as.hexmode(4294967295 + 268435456) : NAs introduced by coercion
Автор: mcsim Источник Размещён: 18.03.2015 11:03

Ответы (1)


3 плюса

787 Репутация автора

Решение

К счастью, я нашел решение, но требует библиотеки gmp

library(gmp)
> as.character(as.bigz(0xffffffff+0x10000000),b=16)
[1] "10fffffff"
Автор: mcsim Размещён: 18.03.2015 11:15
Вопросы из категории :
32x32