1
默认情况下,print method似乎将带有额外0的打印数字填充到小数点右侧,以便所有数字都以相同的小数位数显示,这等于最大小数位数。在r中打印时,是否可以用0填充数字?
例如
a <- c(5, 3.25, 7.9999)
b <- c(5.1, 3.2, 8.3)
data.frame(a, b)
产生
a b
1 5.0000 5.1
2 3.2500 3.2
3 7.9999 8.3
我知道我可以使用options
改变的最大位数,但将只是改变加0的个数。我不想将它们改为人物,因为我希望能够在事后处理数字。我只是想打印值,因为它们实际上存储在数据框(或其他)对象中。
有没有办法做到这一点?
注意:这与询问如何通常或动态设置固定位数不同。提出的重复问题解决了这个问题。
很好做@akrun! – Elin
嗯。我不相信该数据框的元素仍然是数字。可能需要使用double [[]]来获取数字行为。 – user20637
@ user20637它是'data.frame'中的列表列。如果我们检查'str',即'str(data.frame(a = I(list(5,3.25,7.9999)),b = I(list(5.1,3.2,8.3))))# 'data.frame ':3 obs。 2变量: $ a:3 .. $:num 5 .. $:num 3.25 .. $:num 8' – akrun