Como aplicar o teorema de bayes em r


O teorema de Bayes afirma o seguinte para dois eventos A e B :

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

Ouro:

  • P(A|B): A probabilidade de que o evento A, dado o evento B, tenha ocorrido.
  • P(B|A): A probabilidade de que o evento B, dado que o evento A ocorreu, tenha ocorrido.
  • P(A): A probabilidade do evento A.
  • P(B): A probabilidade do evento B.

Por exemplo, suponha que a probabilidade de o tempo estar nublado seja de 40%. Suponhamos também que a probabilidade de chuva em um determinado dia seja de 20% e a probabilidade de nuvens em um dia chuvoso seja de 85%.

Se estiver nublado lá fora em um determinado dia, qual é a chance de chover naquele dia?

Solução :

  • P(nublado) = 0,40
  • P(chuva) = 0,20
  • P(nublado | chuva) = 0,85

Assim, podemos calcular:

  • P(chuva | nublado) = P(chuva) * P(nublado | chuva) / P(nublado)
  • P(chuva | nublado) = 0,20 * 0,85 / 0,40
  • P(chuva | nublado) = 0,425

Se estiver nublado lá fora em um determinado dia, a chance de chover naquele dia é de 42,5% .

Podemos criar a seguinte função simples para aplicar o teorema de Bayes em R:

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

O exemplo a seguir mostra como usar esta função na prática.

Exemplo: teorema de Bayes em R

Suponha que conhecemos as seguintes probabilidades:

  • P(chuva) = 0,20
  • P(nublado) = 0,40
  • P(nublado | chuva) = 0,85

Para calcular P(chuva | nublado), podemos usar a seguinte sintaxe:

 #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

Isso nos diz que se estiver nublado lá fora em um determinado dia, a chance de chover naquele dia é de 0,425 ou 42,5% .

Isso corresponde ao valor que calculamos manualmente anteriormente.

Recursos adicionais

Os tutoriais a seguir explicam como calcular outras probabilidades em R:

Como calcular a probabilidade condicional em R
Como calcular a média condicional em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *