我想将报告中的数字设置为significant digits,但要保持尾随有效零,并正确设置大数字的格式
例如,3个有效数字的数字c(10.00001123451234.5123.45,1.2345,0.12345)应该是10.0、12300、1230、123、1.23、0.123,但我用不同的方法得到不同的结果(而且似乎没有一种方法是通用的).
> numbers<-c(10.00001,12345,1234.5,123.45,1.2345,0.12345)
> for(n in seq(numbers)){
+ print(signif(numbers[n],digits=3))
+ print(format(numbers[n],digits=3))
+ print(formatC(numbers[n], digits=3,format="fg"))
+ print(formatC(numbers[n], digits=3,format="fg", flag="#"))
+ }
[1] 10
[1] "10"
[1] " 10"
[1] "10.0"
[1] 12300
[1] "12345"
[1] "12345"
[1] "12345."
[1] 1230
[1] "1234"
[1] "1234"
[1] "1234."
[1] 123
[1] "123"
[1] " 123"
[1] "123."
[1] 12.3
[1] "12.3"
[1] "12.3"
[1] "12.3"
[1] 1.23
[1] "1.23"
[1] "1.23"
[1] "1.23"
[1] 0.123
[1] "0.123"
[1] "0.123"
[1] "0.123"
在这里,签名并格式化10.00001结果.formatC with flag="#"正确处理小数字,但不正确处理大数字.
有更好的办法吗?