Теорема Байеса утверждает следующее для любых двух событий A и B :
Р(А|В) = Р(А)*Р(В|А) / Р(В)
куда:
- P(A|B): Вероятность события A при условии, что произошло событие B.
- P(B|A): Вероятность события B при условии, что произошло событие A.
- P(A): Вероятность события A.
- P(B): Вероятность события B.
Например, предположим, что вероятность того, что погода будет облачной, составляет 40%. Также предположим, что вероятность дождя в данный день составляет 20 %, а вероятность облаков в дождливый день — 85 %.
Если в данный день на улице облачно, какова вероятность того, что в этот день пойдет дождь?
Решение :
- Р(облачно) = 0,40
- P(дождь) = 0,20
- P(облачно | дождь) = 0,85
Таким образом, мы можем рассчитать:
- P(дождь | облачно) = P(дождь) * P(облачно | дождь) / P(облачно)
- P(дождь | облачно) = 0,20 * 0,85 / 0,40
- P(дождь | облачно) = 0,425
Если в данный день на улице облачно, вероятность того, что в этот день пойдет дождь, составляет 42,5% .
Мы можем создать следующую простую функцию для применения теоремы Байеса в R:
bayesTheorem <- function (pA, pB, pBA) {
pAB <- pA \* pBA / pB
return (pAB)
}
В следующем примере показано, как использовать эту функцию на практике.
Пример: Теорема Байеса в R
Предположим, нам известны следующие вероятности:
- P(дождь) = 0,20
- Р(облачно) = 0,40
- P(облачно | дождь) = 0,85
Чтобы вычислить P(дождь | облачно), мы можем использовать следующий синтаксис:
#define function for Bayes' Theorem
bayesTheorem <- function (pA, pB, pBA) {
pAB <- pA \* pBA / pB
return (pAB)
}
#define probabilities
pRain <- 0.2
pCloudy <- 0.4
pCloudyRain <- .85
#use function to calculate conditional probability
bayesTheorem(pRain, pCloudy, pCloudyRain)
[1] 0.425
Это говорит нам о том, что если в данный день на улице облачно, вероятность того, что в этот день пойдет дождь, составляет 0,425 или 42,5% .
Это соответствует значению, которое мы рассчитали ранее вручную.
Дополнительные ресурсы
В следующих руководствах объясняется, как рассчитать другие вероятности в R:
Как рассчитать условную вероятность в R
Как рассчитать условное среднее значение в R