Come applicare il teorema di bayes in r


Il teorema di Bayes afferma quanto segue per due eventi A e B :

P(A|B) = P(A)*P(B|A) / P(B)

Oro:

  • P(A|B): la probabilità che si sia verificato l’evento A, dato l’evento B.
  • P(B|A): La probabilità che si sia verificato l’evento B, dato che si è verificato l’evento A.
  • P(A): la probabilità dell’evento A.
  • P(B): la probabilità dell’evento B.

Ad esempio, supponiamo che la probabilità che il tempo sia nuvoloso sia del 40%. Supponiamo inoltre che la probabilità di pioggia in un dato giorno sia del 20% e che la probabilità di nuvole in un giorno piovoso sia dell’85%.

Se fuori è nuvoloso in un dato giorno, quali sono le probabilità che piova quel giorno?

Soluzione :

  • P(nuvoloso) = 0,40
  • P(pioggia) = 0,20
  • P(nuvoloso | pioggia) = 0,85

Possiamo quindi calcolare:

  • P(pioggia | nuvoloso) = P(pioggia) * P(nuvoloso | pioggia) / P(nuvoloso)
  • P(pioggia | nuvoloso) = 0,20 * 0,85 / 0,40
  • P(pioggia | nuvoloso) = 0,425

Se fuori è nuvoloso in un dato giorno, la probabilità che piova quel giorno è del 42,5% .

Possiamo creare la seguente semplice funzione per applicare il teorema di Bayes in R:

 bayesTheorem <- function (pA, pB, pBA) {
  pAB <- pA * pBA / pB
  return (pAB)
}

L’esempio seguente mostra come utilizzare questa funzione nella pratica.

Esempio: teorema di Bayes in R

Supponiamo di conoscere le seguenti probabilità:

  • P(pioggia) = 0,20
  • P(nuvoloso) = 0,40
  • P(nuvoloso | pioggia) = 0,85

Per calcolare P(pioggia | nuvoloso), possiamo usare la seguente sintassi:

 #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

Questo ci dice che se fuori è nuvoloso in un dato giorno, la probabilità che piova quel giorno è 0,425 o 42,5% .

Questo corrisponde al valore che abbiamo calcolato manualmente in precedenza.

Risorse addizionali

I seguenti tutorial spiegano come calcolare altre probabilità in R:

Come calcolare la probabilità condizionata in R
Come calcolare la media condizionale in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *