Вероятности

Посчитаем вероятность того, что значения стандартной нормальной случайной величины \(Z\) не превысят 1.96. Другими словами, найдем \(\Phi(1.96)\), которое мы обычно искали по табличке:

# P(Z < 1.96)
pnorm(1.96)
## [1] 0.9750021

Теперь попробуем проделать то же самое, но для нормальной случайной величины \(X\) со средним значением 2 и стандартный отклонением 1 (вручную нам пришлось бы все стандартизировать и опять прибегать к табличке):

# P(X < 1.96)
pnorm(1.96, mean = 2, sd = 1)
## [1] 0.4840466

Теперь найдем вероятность посложнее, для \(X \sim N(6,\text{ } \sigma = 3)\):

\[ \text{P}(-8 < X < 7) = \text{P}(X<7) - \text{P}(X < -8). \]

pnorm(7, mean = 6, sd = 3) - pnorm(-8, mean = 6, sd = 3)
## [1] 0.6305571

Квантили

Для стандартной нормальной величины \(Z\) найдем квантиль уровня 0.2:

qnorm(p = 0.2)
## [1] -0.8416212

Теперь найдем квантиль уровня 0.36 для нормально распределенной случайной величины \(X\) со средним значением 5 и стандартным отклонением 2:

qnorm(p = 0.36, mean = 5, sd = 2)
## [1] 4.283082

Теорема Муавра-Лапласа и биномиальное распределение в R

Решим задачу 3 из семинарского листочка 9:

Найдите вероятность того, что если бросить монету 6 раз, то орел выпадет от 2 до 4 раз включительно: 1) используя формулу для нахождения вероятностей для биномиального распределения (точное вычисление); 2) используя теорему Муавра-Лапласа (приближенное вычисление). Сравните полученные результаты и сделайте выводы.

Сохраним данные задачи в переменные:

# n, p, q
n <- 6
p <- 0.5
q <- 1 - p

Для решения задачи нам нужно посчитать следующую вероятность: \(\text{P}(2 \leqslant S \leqslant 4)\). Посчитаем, используя теорему Муавра-Лапласа:

\[ \text{P}(2 \leqslant S \leqslant 4) = \Phi(\frac{4 - np}{\sqrt{npq}}) - \Phi(\frac{2 - np}{\sqrt{npq}}). \] Считаем в R:

pnorm(4, mean = n * p, sd = sqrt(n * p * q)) - 
  pnorm(2, mean = n * p, sd = sqrt(n * p * q))
## [1] 0.5857838

Теперь посчитаем это по точной формуле, используя биномиальное распределение (вероятность получить число учпехов от 2 до 4 включительно в серии испытаний Бернулли). Для дискретных величин нам понадобится вычисление вероятностей в точке. Вот пример для биномиального распределения:

# P(X = 6)
dbinom(6, size=6, prob=0.5)
## [1] 0.015625

Результат совпадает с тем, что мы бы получили, используя формулу

\[ P(X = 6) = C_6^6 \cdot 0.5^6 \cdot 0.5^0. \] Посчитаем нужную нам вероятность:

# P(X = 2) + P(X = 3) + P(X = 4)
dbinom(2, size = 6, prob = 0.5) + 
  dbinom(3, size = 6, prob = 0.5) +
  dbinom(4, size = 6, prob = 0.5)
## [1] 0.78125

Ответы, полученные двумя способами, сильно расходятся. Этот пример иллюстрирует тот факт, что теорему Муавра-Лапласа корректно применять в случае, когда выборка достаточно большая (от 30 наблюдений и выше), иначе мы рискуем получить неточный ответ.

Дополнение (про биномиальное распределение):

Функция pbinom() вернет нам вероятность вида \(\text{P}(X \leqslant 6)\):

pbinom(q=6, size=6, prob=0.5)
## [1] 1

А биномиальный коэффициент \(C_n^k\) можно вычислить так (на первом месте \(n\), затем \(k\)):

choose(10, 2)  # n=10 и k=2
## [1] 45

Выборки и гистограммы

Сгенерируем случайную выборку в 20 наблюдений из стандартного нормального распределения:

v <- rnorm(20)
v
##  [1]  0.035350687  1.545189121 -0.541635134  0.405883853 -2.096795998
##  [6] -0.128147734  1.830375463 -2.863087930  0.852500913  0.526657092
## [11]  1.659134707  0.704348213 -0.351904386  0.526788267  0.659000306
## [16] -0.007241589 -1.757833533  0.034420881  0.617147911 -0.650432201

Примечание: на самом деле выборка псевдослучайная — на компьютере нельзя добиться абсолютной случайности, так как алгоритмы-то все фиксированные.

Построим гистограмму для полученной выборки:

hist(v)

Выборка точно взята из стандартного нормального распределния. Но похоже ли, судя по картинке, ее распредеелние на нормальное? Нет. Выборка очень мала, поэтому довольно сложно сделать разумный вывод о ее распределении. Возьмем выборку побольше:

v <- rnorm(1000)
hist(v)

Теперь все получше: распределение выборки похоже на нормальное: симметричное и колоколообразное.

Добавим цвет для нашей гистограммы:

hist(v, col = "hotpink")

И заголовок:

hist(v, col = "hotpink", main = "Моя первая розовая гистограмма")