以科学格式强制指数r

时间:2015-10-29 09:11:50

标签: r

我确定这会是重复的,但我不能在我的生活中找到正确的单词组合输入谷歌以获得答案。我想修复一些科学数字的指数,所以它总是" e-3"无论数量多少。例如:

a <- c(1000, 10000, 100000)

给出1e3,1e4,1e5。我希望将指数固定在&#34; 3&#34;:

b <- c("1e3", "10e3", "100e3")

我已经看过这个(https://stat.ethz.ch/R-manual/R-patched/library/base/html/formatc.html)并尝试了这个:

c <- format(a, scientific = 3)

但这并不好。有任何想法吗?感谢

1 个答案:

答案 0 :(得分:0)

我认为,没有内置的方法来修复指数规模。但是你可以编写自己的简单函数来生成所需的输出:

#suppress scientific output
options(scipen=1000)
fixexp=function(x) paste(x/1000, "e3",sep = "")
a=c(10.42342, 2000.345, 1000000.766666)

> fixexp(a)
[1] "0.01042342e3"     "2.000345e3"       "1000.000766666e3"