我正在寻找一种在R中将小数转换为其他进制的方法。oro.dicom包中的dec2base函数只适用于整数(如其帮助文件中所述):
oro.dicom
dec2base
> dec2base(1.559,9) [1] "1"
而1.559在9进制中应该是1.5024,我想知道是否有其他的方法。
2ekbmq321#
我认为您可以将该数字乘以非零小数位数,然后在dec2base命令的后端撤消该操作。
6ju8rftf2#
Rmpfr包可以执行任意精度的算术运算和基址转换:
Rmpfr
library(Rmpfr) x <- mpfr(1.559, precBits = 64, base = 10) ## base = 10 is default b9 <- as.numeric(format(x, base = 9)) print(b9) ## 1.502453
2条答案
按热度按时间2ekbmq321#
我认为您可以将该数字乘以非零小数位数,然后在dec2base命令的后端撤消该操作。
6ju8rftf2#
Rmpfr
包可以执行任意精度的算术运算和基址转换: