CommencezCommencez gratuitement

Tracer le modèle de régression de Poisson

Rappelez-vous la structure de vraisemblance de votre modèle bayésien de régression de Poisson pour le volume \(Y\)i selon le statut de jour de semaine \(X\)i et la température \(Z\)i : \(Y\)i \(\sim Pois(l\)i) où

  • \(log(l\)i\() \; = a + b \; X\)i \(+ c \; Z\)i ; ainsi
  • \(l\)i\( \; = exp(a + b \; X\)i \(+ c \; Z\)i\()\)

Votre simulation RJAGS de 10 000 itérations pour l'a posteriori du modèle, poisson_sim, se trouve dans votre espace de travail, ainsi qu'un cadre de données contenant la sortie de la chaîne de Markov :

> head(poisson_chains, 2)
         a b.1.       b.2.          c
1 5.019807    0 -0.1222143 0.01405269
2 5.018642    0 -0.1217608 0.01407691

Vous utiliserez ces résultats pour tracer les tendances a posteriori de la régression de Poisson. Ces tendances non linéaires peuvent être ajoutées à un ggplot() au moyen de stat_function(). Par exemple, en précisant fun = function(x){x^2}, vous obtiendrez une courbe de tendance quadratique.

Cette activité fait partie du cours

Modélisation bayésienne avec RJAGS

Voir le cours

Instructions de l’exercice

Créez un nuage de points de volume en fonction de hightemp avec les éléments suivants :

  • Utilisez color pour distinguer les jours de semaine et les fins de semaine.
  • Superposez une courbe red qui représente la tendance a posteriori de moyenne de la régression de Poisson \(l\)i de la relation linéaire entre volume et hightemp pour les fins de semaine : l = exp(a + c Z)
  • Superposez une courbe turquoise3 qui représente la tendance a posteriori de moyenne de la régression de Poisson \(l\)i de la relation linéaire entre volume et hightemp pour les jours de semaine : l = exp((a + b.2.) + c Z)

Exercice interactif pratique

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

# Plot the posterior mean regression models
ggplot(___, aes(x = ___, y = ___, color = ___)) + 
    geom_point() + 
    stat_function(fun = function(x){___(mean(___) + mean(___) * x)}, color = "red") + 
    stat_function(fun = function(x){___(mean(___) + mean(___) + mean(___) * x)}, color = "turquoise3")
Modifier et exécuter le code