R语言 伯努利分布

R语言 伯努利分布

伯努利分布二项分布 的一个特例,只进行一次试验。它是伯努利试验(只有两种结果的试验,即要么成功要么失败)的离散概率分布。例如,它可以表示为抛硬币,得到正面的概率为0.5,得到尾部的概率为0.5。它是一个随机变量的概率分布,其值为1的概率为 p ,值为0的概率为 q=1-p。 伯努利分布是n=1的二项分布的一个特例。

这个分布的概率质量函数f,在可能的结果k上,由 。

R语言 伯努利分布

上述关系也可以表示为

R中的伯努利分布

在R编程语言中,有4个内置函数用于伯努利分布,下面将讨论所有这些函数。

dbern()

R编程中的dbern( )函数测量伯努利分布的密度函数。

语法: dbern(x, prob, log = FALSE)

参数

  • x: 数量级的向量
  • prob: 每次试验的成功 概率
  • log: 逻辑;如果为 “true”,则概率p以log(p)形式给出。

在统计学中,它是由以下公式给出的

R中的伯努利分布

例子

# import Rlab library
library(Rlab)
  
# x values for the
# dbern( ) function
x <- seq(0, 10, by = 1)
  
# using dbern( ) function
# to x to obtain corresponding
# Bernoulli  PDF
y <- dbern(x, prob = 0.7)  
  
# plot dbern values
plot(y, type = "o")

输出

R中的伯努利分布

pbern()

R编程中的 pbern( ) 函数给出了伯努利分布的分布函数。分布函数或累积分布函数(CDF)或累积频率函数,描述了变量X取值小于或等于一个数字x的概率。

语法: pbern(q, prob, lower.tail = TRUE, log.p = FALSE)

参数

  • q: 数量级的向量
  • prob: 每次试验的成功概率
  • lowe.tail: 逻辑的
  • log.p: 逻辑的;如果是TRUE,概率p以log(p)形式给出。

例子

# import Rlab library
library(Rlab)
  
# x values for the
# pbern( ) function
x <- seq(0, 10, by = 1)
  
# using pbern( ) function
# to x to obtain corresponding
# Bernoulli  CDF
y <- pbern(x, prob = 0.7)  
  
# plot pbern values
plot(y, type = "o")      

输出

R中的伯努利分布

上面的图表示R中伯努利分布的累积分布函数。

qbern()

qbern( )给出了伯努利分布的量化函数。在统计学术语中,量化函数指定了随机变量的值,使该变量小于或等于该值的概率等于给定的概率。

语法: qbern(p, prob, lower.tail = TRUE, log.p = FALSE)

参数

  • p: 概率的向量。
  • prob: 每次试验的成功概率。
  • lower.tail: 逻辑的
  • log.p: 逻辑的;如果是TRUE,概率p就以log(p)的形式给出。

例子

# import Rlab library
library(Rlab)
  
  
# x values for the
# qbern( ) function
x <- seq(0, 1, by = 0.2)
  
# using qbern( ) function
# to x to obtain corresponding
# Bernoulli  QF
y <- qbern(x, prob = 0.5,lower.tail = TRUE, log.p = FALSE)  
  
# plot qbern values
plot(y, type = "o")

输出

R中的伯努利分布

rbern()

R编程中的rbern( )函数用于生成一个伯努利分布的随机数向量。

语法: rbern(n, prob)

参数

  • n: 观察值的数量。
  • prob :观察值的数量。

例子

# import Rlab library
library(Rlab)
set.seed(98999)    
  
# sample size
N <- 1000
  
# generate random variables using
# rbern( ) function
random_values <- rbern(N, prob = 0.5)  
  
# print the values
print(random_values)
  
# plot of randomly
# drawn density
hist(random_values,breaks = 10,main = "")

输出

[1] 0 0 1 1 0 0 0 0 0 1 0 0 0 1 0 1 1 0 1 0 1 1 1 0 1 0 1 1 0 1 0 1 1 0 1 1 1 1 0 1 0 0 0 0 1 1 1 0 1 1 1 1 1 1 0 0 0 0 1 0 0 0 0 0 0 0 1

[68] 1 1 1 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 1 1 0 0 0 1 1 0 1 1 1 1 0 1 0 0 0 0 1 0 0 1 1 0 0 0 0 0 1 0 1 0 0 1 0 1 0 1 0 1 1 1 0 1

[135] 0 0 0 0 0 1 1 0 1 1 1 1 0 0 0 0 0 1 1 0 0 0 1 1 1 1 1 0 1 1 0 0 1 0 0 1 0 1 1 0 1 1 0 1 1 1 1 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 1 1 0 0 0

[202] 1 1 1 1 1 1 1 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1 0 1 1 0 1 1 0 0 0 0 0 0 0 1 1 0 0 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 0 1 0

[269] 0 0 1 1 0 1 0 1 0 1 0 0 0 0 1 1 0 0 1 1 1 1 0 0 1 0 0 1 0 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 1 0 0 1 1 0 1 0 1 0 0 0 0 1 0 0 0

[336] 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 0 1 1 1 1 0 0 0 0 1 1 0 1 1 1 1 1 1 1 1 1 0 0 1 1 1 0 1 1 0 1 0 1 0 0 1 0 1 1 0 1 1 1 0 0 1 0 1 1 0 0 0

[403] 1 0 1 0 0 1 1 0 1 1 1 1 0 1 1 1 0 1 0 0 1 0 1 0 1 0 0 0 0 1 1 0 0 0 0 1 1 1 1 1 0 0 1 0 0 1 0 0 0 0 1 0 1 1 0 0 0 1 1 0 1 1 1 0 1 0 1

[470] 1 0 1 1 1 0 0 0 0 1 0 0 0 0 1 1 1 1 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 1 0 0 1 1 0 0 1 0 1 0 1 1 1 1 1 0 1 1 0

[537] 0 0 1 0 0 0 1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 0 1 1 1 0 1 0 1 0 0 1 1 1 0 0 1 1 0 1 0 0 1 1 0 1 1 0 1 1 1 0 0 0 0 0 1 1 0 1 1 1 1 0 0 1 0

[604] 1 0 1 0 1 1 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 0 1 0 1 1 0 1 1 1 0 1 1 1 0 1 0 1 1 0 0 0 0 1 0 0 1 0 1 0 1 1

[671] 0 0 0 1 0 1 0 0 1 0 0 0 0 1 1 1 0 1 0 1 1 0 1 1 1 0 1 1 0 1 0 0 0 0 0 0 1 0 0 1 1 0 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 1

[738] 1 0 0 1 1 1 1 1 0 0 1 0 1 0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 1 0 1 0 1 0 1 1 1 1 1 1 0 1 0 1 1 0 1 1

[805] 0 1 0 1 0 1 1 0 0 1 1 1 1 0 1 1 1 0 0 0 0 1 0 0 1 1 0 0 1 1 0 0 0 1 1 1 0 0 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0 1 1 0 1 0 1 1 0 1 0 1 1 1 1

[872] 1 1 0 1 0 0 1 0 0 1 1 0 1 0 0 1 0 0 0 0 0 1 1 1 0 1 1 0 0 1 1 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 0 0

[939] 1 1 1 1 0 1 0 0 1 1 1 0 1 0 0 1 1 0 1 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 1 1 0 0 1 0 0 1 1 0 0 0 1 1 1 0 0 0 0 1

R中的伯努利分布

上面的图表示R语言中伯努利分布的随机抽样数字。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程