Filtro de spam Bayesiano
Mandou bem no exercício anterior! Agora vamos encarar o famoso Teorema de Bayes e usá-lo para uma tarefa simples, mas importante: detectar spam.
Ao navegar pela sua caixa de entrada, você percebeu que vários e-mails nos quais você preferiria não perder tempo lendo contêm frases exclamativas, como "COMPRE AGORA!!!". Você começa a pensar que a presença de três pontos de exclamação seguidos pode ser um bom preditor de spam! Por isso, você preparou um DataFrame chamado emails com duas variáveis: spam, indicando se o e-mail é spam, e contains_3_exlc, indicando se ele contém a string "!!!". O início dos dados é assim:
spam contains_3_excl
0 False False
1 False False
2 True False
3 False False
4 False False
Sua tarefa é calcular a probabilidade de o e-mail ser spam dado que ele contém três pontos de exclamação. Vamos por partes! Aqui está a fórmula de Bayes para sua referência:
$$P(A|B) = \frac{P(B|A) * P(A)}{P(B)}$$
Este exercício faz parte do curso
Análise de Dados Bayesiana em Python
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Calculate and print the unconditional probability of spam
p_spam = ____[____].____
print(____)