R 中的 dbinom、pbinom、qbinom 和 rbinom 指南
本教程介绍如何通过dbinom 、 pbinom 、 qbinom和rbinom函数在 R 中使用二项式分布。
德比诺姆
dbinom函数返回给定一些随机变量x 、试验次数 (size) 以及每次试验成功概率 (prob) 的二项式分布的概率密度函数 (pdf) 值。使用 dbinom 的语法如下:
dbinom(x, 大小, 概率)
简单来说, dbinom求得获得一定数量的概率 在一定数量的试验(大小)中成功(x) ,其中每次试验成功的概率是固定的(prob) 。
以下示例说明如何使用 dbinom 解决一些概率问题。
示例 1:鲍勃的罚球命中率为 60%。如果他罚球 12 次,他罚中 10 次的概率是多少?
#find the probability of 10 successes during 12 trials where the probability of
#success on each trial is 0.6
dbinom(x=10, size=12, prob=.6)
#[1]0.06385228
他恰好投中 10 次的概率是0.0639 。
示例 2: Sasha 抛一枚均匀的硬币 20 次。硬币恰好出现 7 个正面的概率是多少?
#find the probability of 7 successes during 20 trials where the probability of
#success on each trial is 0.5
dbinom(x=7, size=20, prob=.5)
#[1]0.07392883
硬币出现 7 次正面朝上的概率是0.0739 。
普比诺姆
pbinom函数返回给定某个随机变量q 、试验次数 (size) 和每次试验成功概率 (prob) 的二项式分布的累积密度函数 (cdf) 的值。使用 pbinom 的语法如下:
pbinom(q, 大小, 概率)
简单来说, pbinom返回给定q值左侧的面积 在二项分布中。如果您对给定q值右侧的区域感兴趣,您可以简单地添加参数lower.tail = FALSE
pbinom(q, 大小, 概率, lower.tail = FALSE)
以下示例说明如何使用 pbinom 解决一些概率问题。
示例 1:安藤抛一枚均匀的硬币 5 次。硬币正面朝上两次以上的概率是多少?
#find the probability of more than 2 successes during 5 trials where the #probability of success on each trial is 0.5 pbinom(2, size=5, prob=.5, lower.tail=FALSE) # [1] 0.5
硬币正面朝上两次以上的概率是0.5 。
示例 2:假设泰勒在比赛时有 30% 的出手命中率。如果他打 10 次,他击中 4 次或更少的概率是多少?
#find the probability of 4 or fewer successes during 10 trials where the #probability of success on each trial is 0.3 pbinom(4, size=10, prob=.3) # [1]0.8497317
他得分 4 次或更少的概率为0.8497 。
格比诺姆
qbinom函数返回给定某个随机变量q 、试验次数 (size) 和每次试验成功概率 (prob) 的二项式分布的逆累积密度函数 (cdf) 的值。使用 qbinom 的语法如下:
qbinom(q, 大小, 概率)
简单来说,您可以使用qbinom找出二项式分布的第 p 分位数。
以下代码演示了qbinom的一些实际应用示例:
#find the 10th quantile of a binomial distribution with 10 trials and prob #of success on each trial = 0.4 qbinom(.10, size=10, prob=.4) # [1] 2 #find the 40th quantile of a binomial distribution with 30 trials and prob #of success on each trial = 0.25 qbinom(.40, size=30, prob=.25) # [1] 7
尔比诺姆
rbinom函数生成一个二项式分布随机变量的向量,给定向量长度n 、试验次数 (size) 以及每次试验的成功概率 (prob)。使用 rbinom 的语法如下:
rbinom(n, 大小, 概率)
以下代码演示了rnorm的一些实际示例:
#generate a vector that shows the number of successes of 10 binomial experiments with #100 trials where the probability of success on each trial is 0.3. results <- rbinom(10, size=100, prob=.3) results # [1] 31 29 28 30 35 30 27 39 30 28 #find mean number of successes in the 10 experiments (compared to expected #mean of 30) mean(results) # [1] 32.8 #generate a vector that shows the number of successes of 1000 binomial experiments #with 100 trials where the probability of success on each trial is 0.3. results <- rbinom(1000, size=100, prob=.3) #find mean number of successes in the 100 experiments (compared to expected #mean of 30) mean(results) # [1] 30.105
请注意,我们创建的随机变量越多,平均成功次数就越接近预期成功次数。
注:“预期成功次数”= n * p ,其中n是试验次数, p是每次试验成功的概率。