Руководство по dbinom, pbinom, qbinom и rbinom в R


В этом руководстве объясняется, как работать с биномиальным распределением в R с помощью функций dbinom , pbinom , qbinom и rbinom .

дбином

Функция dbinom возвращает значение функции плотности вероятности (PDF) биномиального распределения при заданной случайной величине x , количестве испытаний (размер) и вероятности успеха в каждом испытании (вероятность). Синтаксис использования dbinom следующий:

dbinom(x, размер, вероятность)

Проще говоря, dbinom находит вероятность получения определенного количествауспехи (x) в определенном количестве испытаний (размер) , где вероятность успеха в каждом испытании фиксирована (вероятность) .

В следующих примерах показано, как решать некоторые вероятностные вопросы с помощью 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: Саша подбрасывает правильную монету 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 возвращает значение кумулятивной функции плотности (cdf) биномиального распределения с учетом определенной случайной величины q , количества испытаний (размер) и вероятности успеха в каждом испытании (проблема). Синтаксис использования pbinom следующий:

pbinom(q, размер, вероятность)

Проще говоря, pbinom возвращает площадь слева от заданного значения q .в биномиальном распределении. Если вас интересует область справа от заданного значения q , вы можете просто добавить аргумент lower.tail = FALSE

pbinom(q, size, prob, lower.tail = FALSE)

В следующих примерах показано, как решать некоторые вероятностные вопросы с помощью pbinom.

Пример 1: Андо подбрасывает правильную монету 5 раз. Какова вероятность того, что монета выпадет орлом более 2 раз?

#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

Вероятность того, что монета выпадет орлом более 2 раз, равна 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

Функция qbinom возвращает значение обратной кумулятивной функции плотности (cdf) биномиального распределения с учетом определенной случайной величины q , количества испытаний (размер) и вероятности успеха в каждом испытании (вероятность). Синтаксис использования 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 , количеством испытаний (размером) и вероятностью успеха в каждом испытании (вероятностью). Синтаксис использования 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 — вероятность успеха в каждой попытке.