replicate是将函数运行n次,当函数与随机变量无关时,与rep的结果一样
那么生成随机数时replicate的优点是什么呐
当我们想生成卡方分布的随机数时看起来似乎区别不大
> replicate(5, rchisq(1,df=10))
[1] 15.464481 5.303852 28.781295 4.779243 11.396478
> rchisq(5,df=10)
[1] 15.249400 13.735020 4.833538 12.472054 8.121877
但随机生成1:5之间的随机变量,若想生成的数目大于5,replicate就很有用了
replicate(n=10,sample(1:6,1))
[1] 4 5 5 6 3 4 6 1 2 4
>
> sample(1:6,10)
Error in sample.int(length(x), size, replace, prob) :
cannot take a sample larger than the population when 'replace = FALSE'