CommencerCommencez 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 en 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 du posterior du modèle sur 10 000 itérations, poisson_sim, est disponible dans votre espace de travail, ainsi qu’un data frame de 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 de régression de Poisson postérieures. Ces tendances non linéaires peuvent être ajoutées à un ggplot() avec stat_function(). Par exemple, spécifier fun = function(x){x^2} renverrait une courbe de tendance quadratique.

Cet exercice fait partie du cours

<cours>Modélisation bayésienne avec RJAGS</cours>
Voir le cours

Instructions de l’exercice

Construisez un nuage de points de volume en fonction de hightemp avec les caractéristiques suivantes :

  • Utilisez color pour distinguer les jours de semaine et les week-ends.
  • Superposez une courbe red représentant la tendance de régression de Poisson du posterior moyen \(l\)i de la relation linéaire entre volume et hightemp pour les week-ends : l = exp(a + c Z)
  • Superposez une courbe turquoise3 représentant la tendance de régression de Poisson du posterior moyen \(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