r min 函数没有 return 正确的小数位数

r min function does not return the correct number of decimals

在 R 中,我在数值向量上使用 min 函数,例如这个向量:

v <- c(16.22900, 16.28857, 16.47363, 16.47412, 16.00000, 16.49463, 16.27246, 16.0366, 16.49609)

然而,当我应用 min 函数时,我得到这个 return 值

min(v)
[1] 16

相反,我想要这样的结果:

[1] 16.00000

我检查了向量的 class 但似乎一切正常

class(v)
[1] "numeric"

问题出在哪里?

您在值的内部表示它的显示方式之间陷入困境。

R> v <- c(16.22900, 16.28857, 16.47363, 16.47412, 16.00000, 
+         16.49463, 16.27246, 16.0366, 16.49609)
R> min(v)
[1] 16
R> sprintf("%10.8f", min(v))
[1] "16.00000000"
R> identical(min(v), 16.0000000000000000000)
[1] TRUE
R>