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