R - Биномиальное распределение: Пособие для начинающих

Здравствуйте, будущие программисты R! Сегодня мы окунемся в fascинирующий мир биномиальных распределений в R. Не волнуйтесь, если вы никогда раньше не писали код - я буду вашим дружелюбным проводником в этом путешествии. К концу этого руководства вы будете манипулировать биномиальными распределениями как профи!

R - Binomial Distribution

Что такое биномиальное распределение?

Прежде чем перейти к коду, давайте поймем, что такое биномиальное распределение. Представьте, что вы бросаете монету 10 раз. Биномиальное распределение поможет вам вычислить вероятностъ получить определенное количество голов. Это все о вычислении вероятностъ successes в фиксированном числе независимых испытаний.

Теперь давайте рассмотрим четыре основные функции R, предоставляемые для работы с биномиальными распределениями.

Четыре чудесные функции биномиального распределения в R

R предоставляет нам четыре мощные функции для работы с биномиальными распределениями. Давайте познакомимся с ними:

Функция Назначение
dbinom() Вычисляет вероятностъ密度
pbinom() Вычисляет кумулятивную вероятностъ
qbinom() Вычисляет квантиль
rbinom() Генерирует случайные числа

Давайте рассмотрим каждую из этих функций подробнее.

dbinom(): Мастер вероятностъ

Что делает dbinom()?

Функция dbinom() вычисляет вероятностъ получить exactly k successes в n испытаниях. Это как спросить: "Какова вероятностъ получить exactly 3 головы, когда я бросаю монету 5 раз?"

Синтаксис и параметры

dbinom(x, size, prob)
  • x: множеcтво successes, которое нас интересует
  • size: множеcтво испытаний
  • prob: вероятностъ успеха в каждом испытании

Пример: Броски монеты

Давайте вычислим вероятностъ получить exactly 3 головы в 5 бросках монеты:

probability <- dbinom(3, size = 5, prob = 0.5)
print(probability)

Когда вы выполните этот код, вы увидите:

[1] 0.3125

Это означает, что вероятностъ получить exactly 3 головы в 5 бросках монеты составляет 31.25%.

pbinom(): Калькулятор кумулятивной вероятностъ

Что делает pbinom()?

Функция pbinom() вычисляет кумулятивную вероятностъ - вероятностъ получить до k successes в n испытаниях. Это как спросить: "Какова вероятностъ получить 3 или меньше голов, когда я бросаю монету 5 раз?"

Синтаксис и параметры

pbinom(q, size, prob, lower.tail = TRUE)
  • q: множеcтво successes, которое нас интересует
  • size: множеcтво испытаний
  • prob: вероятностъ успеха в каждом испытании
  • lower.tail: если TRUE (по умолчанию), вычисляет P(X ≤ x); если FALSE, вычисляет P(X > x)

Пример: Оценки на экзамене

Представьте себе тест с 10 вопросами, каждый из которых имеет 4 варианта ответа. Какова вероятностъ угадать 6 или меньше вопросов?

probability <- pbinom(6, size = 10, prob = 0.25)
print(probability)

Выполнение этого кода дает:

[1] 0.9803073

Это означает, что вероятностъ угадать 6 или меньше вопросов чистым случаем составляет 98.03%!

qbinom(): Поиск квантиля

Что делает qbinom()?

Функция qbinom() - это как обратная функция pbinom(). Она находит минимальное множеcтво successes для данной кумулятивной вероятностъ.

Синтаксис и параметры

qbinom(p, size, prob, lower.tail = TRUE)
  • p: кумулятивная вероятностъ
  • size: множеcтво испытаний
  • prob: вероятностъ успеха в каждом испытании
  • lower.tail: если TRUE (по умолчанию), использует P(X ≤ x); если FALSE, использует P(X > x)

Пример: Контроль качества

Фабрика производит лампочки. Они хотят знать максимальное множеcтво дефектных лампочек в партии из 100, чтобы поддерживать 95% стандарт качества.

max_defects <- qbinom(0.05, size = 100, prob = 0.03, lower.tail = FALSE)
print(max_defects)

Этот код выведет:

[1] 6

Это означает, что они могут иметь не более 6 дефектных лампочек, чтобы поддерживать их 95% стандарт качества.

rbinom(): Генератор случайных чисел

Что делает rbinom()?

Функция rbinom() генерирует случайные числа из биномиального распределения. Это как моделирование реальных испытаний!

Синтаксис и параметры

rbinom(n, size, prob)
  • n: множеcтво случайных значений для генерации
  • size: множеcтво испытаний
  • prob: вероятностъ успеха в каждом испытании

Пример: Моделирование бросков монеты

Давайте смоделируем броски монеты 10 раз, и мы проведем этот эксперимент 5 раз:

simulations <- rbinom(5, size = 10, prob = 0.5)
print(simulations)

Вы можете получить результат, похожий на этот:

[1] 4 6 5 3 7

Каждое число представляет множеcтво голов в одном наборе из 10 бросков монеты. Как видите, это случайное значение каждый раз!

Объединение всего вместе

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


# вероятностъ exactly 3 дождливых дней в 7-дневной неделе
exactly_three <- dbinom(3, size = 7, prob = 0.3)

#

Credits: Image by storyset