R中整数的十进制表示

decimal representation of an integer in R

我正在为 R 中整数的十进制表达式而苦恼。例如,如何将整数(例如 x = 1)转换为 R 中的十进制表达式,如 x = 2.00 并满足三位数字的要求.

最好的, 琼

我认为当你在控制台中显示一个对象的值时,它隐式调用了该对象的 print 方法(即在控制台中键入 x 与输入 print(x)。我不知道有什么方法可以通过标准 print 在控制台中强制显示尾随零(除了编写自己的打印方法来覆盖内部方法)。但是,是否在控制台或任何其他类型的输出中,您可以使用 formatsprintf 来更好地控制结果的显示方式。例如:

x = 2

format(x, digits=2, nsmall=2) 
[1] "2.00"
sprintf("%1.2f", x)
[1] "2.00"

如果愿意,您甚至可以去掉引号,使用 noquote 函数:

noquote(format(x, digits=2, nsmall=2))
[1] 2.00
noquote(sprintf("%1.2f", x))
[1] 2.00