美文网首页
R语言学习笔记3-生成二项分布随机数

R语言学习笔记3-生成二项分布随机数

作者: 75d3f95b058e | 来源:发表于2018-04-08 07:33 被阅读1750次

伯努利试验

首先简单介绍一下伯努利试验(Bernoulli experiment)

伯努利试验,是指在同样的条件下,重复地,相互独立地,进行的一种随机试验,该随机试验只有两种结果:发生或不发生

假设:该项试验重复独立地进行了N次,则称为N重伯努利试验,N即为该试验的SIZE。

比如,连续抛N次硬币,每次抛硬币相互独立互不影响,结果只能是“正面”或者“反面”,得到正面的概率为0.5,每次抛硬币的试验即为伯努利试验。


二项分布

多次伯努利试验的分布概率,即为二项分布;换句话说,当二项分布的试验次数为1时,符合伯努利试验。


生成二项分布随机数

在R语言中,生成二项分布随机数的函数是:rbinom()

基本语法:rbinom(n,size,prob),n表示生成的随机数的数量,size表示进行伯努利试验的次数,prob表示一次伯努利试验成功的概率。

仍以抛硬币为例,总共抛硬币100次(size=100),得到正面记为成功,即每次成功概率为0.5(prob=0.5),那么,n的含义是什么呢?现在,我们让计算机模拟30个随机数,看看这30个数字有何特点,据此来解释n的含义。

在本例中,n=30,size=100,prob=0.5,在R中输入:

rbinom(30,100,.5) # 小数点前的0可以省略
[1] 52 39 45 53 51 53 52 43 50 51 52 48 56 47 43 53 47 47 52 53 49 43 51 50 44 57 54 59 43 48

仔细观察就会发现,生成的30个随机数都在50左右徘徊,这是为什么呢?因为每次伯努利试验(抛硬币)的成功概率是0.5,那么在理想状态下,模拟100次伯努利试验(抛100次硬币),成功的次数应为50次,由此可见,在函数rbinom()中,n的含义是伯努利试验成功的次数

可以想见,如果模拟伯努利试验的次数减少,n值的偏差将会变大,比如:

> rbinom(10,10,.5)
 [1] 5 6 6 4 4 4 3 5 6 8

在本例中,单次试验的成功概率依旧为0.5,但是只模拟10次试验,并生成10个随机数,最大的数为8,远远偏离预期的5。

注意:在rbinom()函数中,n可以大于size,比如rbinom(100,10,.5)。

相关文章

  • R语言学习笔记3-生成二项分布随机数

    伯努利试验 首先简单介绍一下伯努利试验(Bernoulli experiment)。 伯努利试验,是指在同样的条件...

  • R | 随机数生成

    [R语言] 生成随机数[https://blog.csdn.net/qiao_wan/article/detail...

  • R语言-0基础学习4-实战1-常见操作

    R语言学习系列R语言-0基础学习1-数据结构R语言-0基础学习2-构建子集R语言-0基础学习3-循环排序信息处理函...

  • 《学习小组Day4笔记--面团》

    一 R语言基本操作 二 R语言画图操作 plot 二维线画图函数 runif 生成均匀分布随机数的函数 三 干货收...

  • R语言|生成随机数

    首先,如果想要别人复现出跟你一样的结果,要先设置随机种子Set the seed of R‘s random nu...

  • R语言学习笔记4-随机数的产生

    1、均匀分布随机数 在R语言中,生成均匀分布随机数的函数是:runif() 基本语法:runif(n, min=0...

  • set.seed()作用

    R语言中set.seed()作用是设定生成随机数的种子,种子是为了让结果具有重复性,重现结果。如果不设定种子,生成...

  • 学习小组Day4笔记--行

    正式开始学习R语言了,今天笔记内容为R语言基础和ggplot2的入门学习 R语言基础 1、认识R与RStudio ...

  • 无处不在的随机数

    目录: 什么是随机数 随机数分类 伪随机数生成器 真随机数生成器 各种语言中的随机数 使用系统时间作为种子是否安全...

  • 2020-05-14

    学习小组DAY4笔记-lyq 今天初探R语言 R语言安装 R语言面板在简单了解

网友评论

      本文标题:R语言学习笔记3-生成二项分布随机数

      本文链接:https://www.haomeiwen.com/subject/ejauhftx.html