如何在保留科学财产的同时将科学数字四舍五入为n位数字?

时间:2018-07-15 23:16:05

标签: r rounding

我如何将科学数字四舍五入为n位数字?但是仍然保持E ...

所需的输出:

round(num,2) ## Just an example, I know this does not work.
1.78943642E-10 -> 1.79E-10
2.68289674E-11 -> 2.68E-11
6.23486821E-15 -> 6.23E-15

1 个答案:

答案 0 :(得分:3)

您要查找signif()(四舍五入到指定的有效数字位数)吗?

例如:

x <- 1e18/pi; x
# 3.183099e+17
signif(x, 2)
# 3.2e+17

如果您希望“强制”打印科学计数法(例如作为情节标签的一部分),则可以使用formatC()

formatC(0.01235, format="e", digits=2)
# "1.23e-02"

这里的输出是字符,因此您不能(直接)对其进行数学运算。