R - 二项分布



二项分布模型用于计算在多次实验中,只有两种可能结果的事件成功的概率。例如,抛硬币总是得到正面或反面。二项分布用于估计在连续抛掷硬币 10 次中恰好得到 3 个正面的概率。

R 有四个内置函数可以生成二项分布。它们描述如下。

dbinom(x, size, prob)
pbinom(x, size, prob)
qbinom(p, size, prob)
rbinom(n, size, prob)

以下是所用参数的描述:

  • x 是一个数字向量。

  • p 是一个概率向量。

  • n 是观测数。

  • size 是试验次数。

  • prob 是每次试验成功的概率。

dbinom()

此函数给出每个点的概率密度分布。

# Create a sample of 50 numbers which are incremented by 1.
x <- seq(0,50,by = 1)

# Create the binomial distribution.
y <- dbinom(x,50,0.5)

# Give the chart file a name.
png(file = "dbinom.png")

# Plot the graph for this sample.
plot(x,y)

# Save the file.
dev.off()

当我们执行上述代码时,它会产生以下结果:

dbinom() graph

pbinom()

此函数给出事件的累积概率。它是一个表示概率的单个值。

# Probability of getting 26 or less heads from a 51 tosses of a coin.
x <- pbinom(26,51,0.5)

print(x)

当我们执行上述代码时,它会产生以下结果:

[1] 0.610116

qbinom()

此函数取概率值并给出一个其累积值与概率值匹配的数字。

# How many heads will have a probability of 0.25 will come out when a coin
# is tossed 51 times.
x <- qbinom(0.25,51,1/2)

print(x)

当我们执行上述代码时,它会产生以下结果:

[1] 23

rbinom()

此函数根据给定样本生成给定概率的所需数量的随机值。

# Find 8 random values from a sample of 150 with probability of 0.4.
x <- rbinom(8,150,.4)

print(x)

当我们执行上述代码时,它会产生以下结果:

[1] 58 61 59 66 55 60 61 67
广告