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