[R语言] 生成随机数

您所在的位置:网站首页 c语言随机数生成1到1000 [R语言] 生成随机数

[R语言] 生成随机数

2024-07-15 01:49| 来源: 网络整理| 查看: 265

【R语言】生成随机数

版权声明:本文为博主原创文章,未经允许不得转载。https://blog.csdn.net/qiao_wan/article/details/81980404

一、sample()函数 1、sample(x, size, replace, prob)

x 表示从x中选取随机数,x可以是一个向量(可以由一个元素或者多个元素组成)。

size表示随机生成的随机数的个数,是一个非负的整数。

replace表示抽取方式(replace = TRUE 表示可放回抽取,replace = FLASE表示不可放回抽取)。

prob表示按照给定的概率抽取,由一个向量组成(默认prob = NULL)。

例1:在1-10中不可放回的随机抽取三个数。

> sample(1:10, 3, replace = FALSE) [1] 9 7 4

例2:在向量c(1,3,5,7,9)中不可放回的抽取两个数,对应每个数的抽取概率为c(0.9,0.7,0.5,0.3,0.1)。

> sample(c(1,3,5,7,9), 2, replace = FALSE, prob = c(0.9,0.7,0.5,0.3,0.1)) [1] 1 3

例3:在1-10中随机抽取大于5的两个数。

> x sample(x[x > 5], 2) [1] 9 10 2、set.seed()函数 设置随机种子,如果设置了随机种子每次的随机数是相同的。目的是方便以后他人进行测试。

例4:设置随机种子,连续两次随机抽取4个数都是一样的。

> set.seed(2018) > sample(1:10, 4, replace = FALSE) [1] 4 5 1 2 > set.seed(2018) > sample(1:10, 4, replace = FALSE) [1] 4 5 1 2 二、runif()函数:随机生成均匀分布的小数 1、runif(n, min = 0, max = 1)

n表示随机生成小数的个数。

min = 0,max = 1,表示小数的范围在0-1之间。

例5:随机生成10个0-1之间的小数。

> runif(10) [1] 0.4743142 0.3010486 0.6067589 0.1300121 0.9586547 0.5468495 0.3956160 [8] 0.6645386 0.9821123 0.6782154 2、runif(n, min = a, max = b) 表示随机生成n个a-b之间均匀分布的小数。

例6: 随机生成3个4-5之间的小数。

> runif(3, min = 4, max = 5) [1] 4.806028 4.634180 4.270736 3、runif还有其他三个函数:dunif(), punif(),qunif() 与runif()用法类似,具体可通过help(dunif)来查询。 三、rnorm()函数:生成服从正态分布的随机数 1、rnorm(n, mean = 0, sd = 1) 生成长度为n的向量,向量中的每一个值服从正态分布。

例7:生成10个服从标准正态分布的随机数。

> rnorm(10,mean = 0,sd = 1) [1] 0.07479388 0.83917760 -0.11249379 0.39390330 -0.72464590 0.75717210 [7] 0.20276987 -1.19711695 -0.18655595 -0.89571838 2、rnorm(n, mean = m, sd = s) 生成n个服从均值为m,方差为s的正态分布的随机数。

例8:生成10个均值为5,方差为4的随机数。

> rnorm(10, mean = 5, sd = 4) [1] 9.490283 3.238111 5.978007 8.379948 8.422938 9.057634 2.013373 7.240886 [9] 4.903630 4.014727 四、其他

除了上述的常见的生成服从正态分布和均匀分布的随机数,R中还有其他函数用来生成不同概率分布的随机数,常见如下:

函数概率分布rexp指数分布rfF分布rgammaGamma分布rgeom几何分布rhyper超几何分布rlogisLogistic分布rmultinom多项式分布rpois泊松分布rtt分布rchisq卡方分布

参考:http://bbs.pinggu.org/thread-193449-1-1.html

转载请注明出处:https://blog.csdn.net/qiao_wan/article/details/81980404



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3