【发布时间】:2020-02-07 06:04:05
【问题描述】:
对于以下数字
n.i=rpois(10,15)
n.i
[1] 12 19 9 17 20 9 11 18 15 13
我想从大小为12、19、...和13 的标准分布生成随机数,然后组合成一列。
我可以单独做,例如,
x1=rnorm(n.i[1])
x1
[1] -1.4684359 0.3243679 1.1562347 -1.5978675 -1.3778871 0.6678866 -0.2940829 -1.3842074 0.7557435
[10] -1.5554419 -0.2866167 0.6250479
.
.
.
x10=rnorm(n.i[10])
x10
[1] -0.69302945 -0.09568832 -1.88538457 -0.26877610 -0.66092837 -0.33671428 -1.28805672 -2.26124749 0.12168687
[10] 0.96683385 0.04307080 0.42701123 -0.92463081
To combine, x=c(x1,x2,...,x10)
我可以使用任何 for 循环或内置函数来解决这个问题吗?任何帮助表示赞赏。
【问题讨论】:
-
你可以做
unlist(lapply(n.i, rnorm))。尽管在这种情况下,从正态 0,1 分布中抽取一堆小数据看起来与从正态分布中抽取一个大数据没有什么不同rnorm(sum(n.i))