将runif()应用于下限和上限的向量

时间:2016-03-16 08:47:34

标签: r random vectorization

我需要生成一个位于上限和下限之间的随机数向量。每个数字都有自己的边界 - 因此边界也是向量。

目前我使用for循环执行此操作,但可能有更好的方法。

# Bounds
lb <- c(1,2,3,4)
ub <- c(9,7,5,8)

# Generate rnd numbers, stored in rndnum
rndnum <- runif(1, lb[1], ub[1])
for(i in 2:length(lb))
  rndnum <- c(rndnum, runif(1,lb[i], ub[i]))

1 个答案:

答案 0 :(得分:5)

runif针对其minmax参数进行了矢量化。你可以这样做:

rndnum <- runif(length(lb),lb,ub)