我想轻松生成一个数字为0.0001、0.001、0.01、0.1、1,10,100的列表...有什么方法可以轻松地做到这一点?
答案 0 :(得分:2)
我们可以使用R的矢量化操作
n <- 7 #No of terms required in final output
start <- 0.0001
start * 10 ^ (seq_len(n) - 1)
#[1] 0.0001 0.0010 0.0100 0.1000 1.0000 10.0000 100.0000
答案 1 :(得分:2)
您可以这样做:
options("scipen"=-100, "digits"=4)
0.0001 * 10^(0:6)
# [1] 1e-04 1e-03 1e-02 1e-01 1e+00 1e+01 1e+02
OR,不科学:
options("scipen"=100, "digits"=4)
0.0001 * 10^(0:6)
# [1] 0.0001 0.0010 0.0100 0.1000 1.0000 10.0000 100.0000
答案 2 :(得分:1)
apply(as.data.frame(-4:2),1,FUN = function(x) 10^x)
#[1] 1e-04 1e-03 1e-02 1e-01 1e+00 1e+01 1e+02
或者,如注释中所建议:
10^(-4:2)
#[1] 1e-04 1e-03 1e-02 1e-01 1e+00 1e+01 1e+02