将数字转换为科学格式的字符串

时间:2014-12-09 18:06:15

标签: r string numbers format

我有一些数字,例如num = c(0.1, 0.001, 1.12345e-5)。我想将num作为字符串,每个元素以科学格式显示,有3位数字。那是num_after_convert = c( '1.00e-1', '1.00e-3' , '1.12e-5')。有什么好的解决方案吗?

2 个答案:

答案 0 :(得分:2)

sprintf函数可以让您最大程度地控制输出,并且可以保证科学记数法:

> num <- c(0.1, 0.001, 1.12345e-5)
> sprintf("%4.2e", num)
[1] "1.00e-01" "1.00e-03" "1.12e-05"
> 

答案 1 :(得分:1)

如果你的向量总是至少有一个元素已经用科学计数法表示,请尝试这个:

format(num,digits=3)