以R为单位显示变量的精确值 >x [1] 1.000426

以R为单位显示变量的精确值 >x [1] 1.000426,r,r-faq,R,R Faq,如果我想打印x的确切值,我将如何打印 对不起,如果这是一个愚蠢的问题。我试着在谷歌上搜索“R”和“精确”或“圆”,但我得到的都是关于如何圆的文章 提前谢谢你 在整个会话期间全局解决方案 > x <- 1.00042589212565 > x [1] 1.000426 或者仅针对x: options(digits=16) > x [1] 1.00042589212565 或 或 我喜欢第二个,它很好地表明“精确”是相对的。如果它不是一个整数,那么你就不会得到一个精确的值

如果我想打印
x
的确切值,我将如何打印

对不起,如果这是一个愚蠢的问题。我试着在谷歌上搜索“R”和“精确”或“圆”,但我得到的都是关于如何圆的文章


提前谢谢你

在整个会话期间全局解决方案

> x <- 1.00042589212565
> x
[1] 1.000426
或者仅针对x:

options(digits=16)
> x
[1] 1.00042589212565


我喜欢第二个,它很好地表明“精确”是相对的。如果它不是一个整数,那么你就不会得到一个精确的值,只是一个近似值。确切地看,唯一真正准确的值是尾数/指数编码的浮点值的8字节。
sprintf("%.16f", x)
[1] "1.0004258921256499"
print(x, digits=15)
format(x, digits=15)
sprintf("%.14f", x)