2016-11-01 83 views
-2

我試圖在數據框中總結一個雙打矢量。如果總和相對較低,則按預期工作。我該如何強制R在一個大雙數中顯示2個小數點?

df <- data.frame(
    numbers = c(50, 632.5, 12.45) 
) 

sum(df$numbers) 
# 694.95 

但是,當總和變高時,R開始舍入總和。

df <- data.frame(
    numbers = c(50000000, 632.5, 12.45) 
) 
sum(df$numbers) 
# 50000645 

如何阻止R消除這些小數點?我想要的輸出是:

sum(df$numbers) 
# 50000645.95 
+0

注意,你可能會遇到[浮點](HTTP://計算器。 com/a/9508558/1412059)的問題。您可能需要[任意精度](https://cran.r-project.org/web/packages/Rmpfr/vignettes/Rmpfr-pkg.pdf)數字。 – Roland

回答

2

嘗試設置選項中的位數,您可以設置任何適合您的功能。例如:

options(digits = 10) 
sum(df$numbers) 
[1] 50000644.95 
0

或者,如果你只是想改變這個計算的設置,你可以使用:

print(sum(df$numbers, digits = 10)) 
相關問題