CommencerCommencez gratuitement

Un raccourci conditionnel

Super, vous venez d'effectuer un calcul bayésien, sans aucune simulation ! Le graphique que vous avez produit devrait ressembler à la distribution a posteriori calculée au chapitre 3. Toutefois, vous voyez que cela demande pas mal de code ; n'y a-t-il rien à simplifier ?

Si, bien sûr ! Vous pouvez conditionner directement sur les données, sans avoir à créer d'abord la distribution conjointe.

Cet exercice fait partie du cours

<cours>Fondamentaux de l'analyse bayésienne des données en R</cours>
Voir le cours

Instructions de l’exercice

  • Affectez directement la valeur 6 à n_visitors, en remplaçant simplement l'instruction seq.
  • Vous pouvez maintenant supprimer la ligne qui conditionne sur les données, ainsi que la ligne suivante qui normalise pars$probability.
  • Examinez une dernière fois le code final et convainquez-vous que le résultat de ce code modifié sera identique à celui d'avant. :)

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# 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")
Modifier et exécuter le code