Jak zastosować twierdzenie bayesa w r
Twierdzenie Bayesa stwierdza, co następuje dla dwóch zdarzeń A i B :
P(A|B) = P(A)*P(B|A) / P(B)
Złoto:
- P(A|B): Prawdopodobieństwo, że zdarzenie A przy danym zdarzeniu B miało miejsce.
- P(B|A): Prawdopodobieństwo, że zdarzenie B miało miejsce, przy założeniu, że wystąpiło zdarzenie A.
- P(A): Prawdopodobieństwo zdarzenia A.
- P(B): Prawdopodobieństwo zdarzenia B.
Załóżmy na przykład, że prawdopodobieństwo, że pogoda będzie pochmurna, wynosi 40%. Załóżmy również, że prawdopodobieństwo opadów deszczu w danym dniu wynosi 20%, a prawdopodobieństwo zachmurzenia w deszczowy dzień wynosi 85%.
Jeśli danego dnia na zewnątrz jest pochmurno, jakie jest prawdopodobieństwo, że tego dnia będzie padać deszcz?
Rozwiązanie :
- P(pochmurno) = 0,40
- P(deszcz) = 0,20
- P(pochmurno | deszcz) = 0,85
W ten sposób możemy obliczyć:
- P(deszcz | pochmurno) = P(deszcz) * P(pochmurno | deszcz) / P(pochmurno)
- P(deszcz | pochmurno) = 0,20 * 0,85 / 0,40
- P(deszcz | pochmurno) = 0,425
Jeśli w danym dniu na zewnątrz jest pochmurno, szansa na deszcz w tym dniu wynosi 42,5% .
Możemy utworzyć następującą prostą funkcję, aby zastosować twierdzenie Bayesa w R:
bayesTheorem <- function (pA, pB, pBA) { pAB <- pA * pBA / pB return (pAB) }
Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.
Przykład: Twierdzenie Bayesa w R
Załóżmy, że znamy następujące prawdopodobieństwa:
- P(deszcz) = 0,20
- P(pochmurno) = 0,40
- P(pochmurno | deszcz) = 0,85
Aby obliczyć P(deszcz | pochmurno), możemy zastosować następującą składnię:
#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
Oznacza to, że jeśli danego dnia na zewnątrz jest pochmurno, prawdopodobieństwo, że tego dnia spadnie deszcz, wynosi 0,425 lub 42,5% .
Odpowiada to wartości, którą obliczyliśmy wcześniej ręcznie.
Dodatkowe zasoby
Poniższe tutoriale wyjaśniają, jak obliczyć inne prawdopodobieństwa w R:
Jak obliczyć prawdopodobieństwo warunkowe w R
Jak obliczyć średnią warunkową w R