服从正态分布的随机数
rnorm(n,mean=0,sd=1)
如果想要生成一个长度为10的向量,向量中的每个值服从标准正态分布,那么可以这样写
> rnorm(10)
[1] -0.7125585 2.2070410 1.4730548 -0.6655749 0.5349409 -0.9700122 0.4970766
[8] -1.7385672 0.9300553 -0.4663140
另外,该函数也可以生成服从一般正态分布的随机数,例如
> rnorm(10,mean=1,sd=4)
[1] -2.520978 3.567172 1.099416 1.029909 -1.239032 1.363111 0.670465
[8] 4.015274 -7.095845 3.050106
其中mean表示均值,sd表示标准差。
此外,还有其他三个函数,dnorm,pnorm,qnorm。在如上两种基本用法中只是名字有所不同,效果是一样的。当然这三个函数还有自己相应的特殊用法,可以通过help(dnorm)进行查询。
服从均匀分布的随机数
runif(n, min = 0, max = 1)
生成一个长度为10的向量,向量中的每个值服从0~1区间上的均匀分布,那么可以这样写
> runif(10)
[1] 0.68835411 0.14208554 0.53551407 0.30101879 0.64202722 0.06249627 0.80834355
[8] 0.26193046 0.90841919 0.94294355
另外,也可以生成其他区间上的随机数,例如
> runif(10,min=5,max=10)
[1] 7.771348 8.747055 8.721152 7.517620 6.084385 5.209369 5.532953 5.845175
[9] 6.683199 9.708647
同样的,runif也有其他三个函数,dunif,punif,qunif。
其他
除了生成最常见的均匀分布随机数和正态分布随机数,R还提供了其他各种函数用以生成服从不同分布的随机数,常见的函数如下。
rexp | 指数分布 |
rf | F分布 |
rgamma | Gamma分布 |
rgeom | 几何分布 |
rhyper | 超几何分布 |
rlnorm | 对数正态分布 |
rlogis | Logistic分布 |
rmultinom | 多项分布 |
rnbinom | 负二项分布 |
rpois | 泊松分布 |
rt | t分布 |
rchisq | 卡方分布 |
参考
http://bbs.pinggu.org/thread-193449-1-1.html
转载请注明出处:http://blog.csdn.net/zhyoulun/article/details/46413727