Comece agoraComece grátis

Um atalho com condicionamento

Ótimo, você acabou de fazer um cálculo Bayesiano sem nenhuma simulação! O gráfico que você gerou deve ser parecido com a distribuição a posteriori que você calculou no capítulo 3. Mas deu para ver que exigiu bastante código — será que dá para cortar alguma coisa?

Sim! Você pode condicionar diretamente nos dados, sem precisar criar a distribuição conjunta primeiro.

Este exercicio faz parte do curso

Fundamentos da Análise de Dados Bayesiana em R

Ver curso

Instruções do exercicio

  • Defina n_visitors diretamente como 6, apenas substituindo o comando seq.
  • Agora você pode remover a linha que condiciona nos dados e, em seguida, a linha que normaliza pars$probability.
  • Dê uma olhada extra no código final e convença-se de que o resultado desse código modificado será o mesmo de antes. :)

exercicio interativo prático

Tente este exercicio completando este código de exemplo.

# Simplify the code below by directly conditioning on the data
n_ads_shown <- 100
proportion_clicks <- seq(0, 1, by = 0.01)
n_visitors <- seq(0, 100, by = 1)
pars <- expand.grid(proportion_clicks = proportion_clicks,
                    n_visitors = n_visitors)
pars$prior <- dunif(pars$proportion_clicks, min = 0, max = 0.2)
pars$likelihood <- dbinom(pars$n_visitors, 
    size = n_ads_shown, prob = pars$proportion_clicks)
pars$probability <- pars$likelihood * pars$prior
pars$probability <- pars$probability / sum(pars$probability)
pars <- pars[pars$n_visitors == 6, ]
pars$probability <- pars$probability / sum(pars$probability)
plot(pars$proportion_clicks, pars$probability, type = "h")
Editar e Executar Código