我目前正在编程循环并创建了一个名为growth_rate
的向量。我想使用rnorm
函数为此向量绘制一个随机数20次。我用来做这个的代码是
growth_rate <- rep((rnorm(n = 1, mean = 1, sd = 0.4)), times = 20)
我还制作了一个名为
的矢量rate <- rnorm(n = 1, mean = 1, sd = 0.4)
制作名为
的矢量grate <- rep(rate, 20)
它仍然输出相同的数字20次而不是20个随机数,例如
[1] 1.304936 1.304936 1.304936 1.304936 1.304936 1.304936 1.304936 1.304936 1.304936
依旧......
无论如何,我可以在一个向量中输出20个随机数而不是使用rnorm
制作20个单独的向量吗?谢谢!
答案 0 :(得分:0)
如果您想从同一正态分布中抽取20个样本,只需使用rnorm(20, ...)
。
set.seed(2017);
rnorm(20, mean = 1, sd = 0.4);
#[1] 1.1843665 0.4939755 0.7252589 0.8217352 1.4896327 1.1439255 1.1603086
#[8] 1.0442731 0.7776635 1.7147653 1.1991402 0.2133531 1.2805424 0.8108834
#[15] 0.5728705 0.9128100 0.5895982 0.7084435 0.7499843 0.3253227
在您的方法中,首先从正态分布中绘制一个样本,然后将相同的数字复制20次。