CommencerCommencer 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

Modélisation bayésienne avec RJAGS

Afficher le cours

Instructions

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 cet exemple de code.

# 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