如何在 R 中使用 sprintf 控制指数的位数?
How to control number of digits in exponent with sprintf in R?
此 R 代码生成以下内容:
> sprintf("%.6e", c(5, 50, 500, 5000))
[1] ""5.000000e+00" "5.000000e+01" "5.000000e+02" "5.000000e+03"
但我希望指数中有三位数字(在“e+”之后),如下所示:
"5.000000e+000" "5.000000e+001" "5.000000e+002" "5.000000e+003"
这里是 sub
的一个选项,在使用 sprintf
进行更改后,在 sprintf
格式
之后的字符串中的最后一个元素之前插入 0
sub('([0-9])$', '0\1', sprintf("%.6e", c(5, 50, 500, 5000)))
#[1] "5.000000e+000" "5.000000e+001" "5.000000e+002" "5.000000e+003"
此 R 代码生成以下内容:
> sprintf("%.6e", c(5, 50, 500, 5000))
[1] ""5.000000e+00" "5.000000e+01" "5.000000e+02" "5.000000e+03"
但我希望指数中有三位数字(在“e+”之后),如下所示:
"5.000000e+000" "5.000000e+001" "5.000000e+002" "5.000000e+003"
这里是 sub
的一个选项,在使用 sprintf
进行更改后,在 sprintf
格式
sub('([0-9])$', '0\1', sprintf("%.6e", c(5, 50, 500, 5000)))
#[1] "5.000000e+000" "5.000000e+001" "5.000000e+002" "5.000000e+003"