Predykcja a posteriori dla modelu Poissona
Zmienna l_weekday odzwierciedla trend natężenia ruchu w dni powszednie, gdy temperatura wynosi 80 stopni:
> head(poisson_chains, 2)
a b.1. b.2. c l_weekend l_weekday
1 5.0198 0 -0.1222 0.0141 465.924 412.324
2 5.0186 0 -0.1218 0.0141 466.284 412.829
Skoro rozumiesz już trend, czas na predykcje! Konkretnie – przewidźmy natężenie ruchu na szlaku w następny dzień powszedni z temperaturą 80 stopni. Aby to zrobić, trzeba uwzględnić indywidualną zmienność wokół trendu, modelowaną przez rozkład prawdopodobieństwa \(Y\)i \(\sim Pois(l\)i).
Korzystając z funkcji rpois(n, lambda), gdzie n to liczebność próby, a lambda to parametr intensywności, zasymuluj predykcje Poissona dla natężenia ruchu – osobno dla każdej wartości trendu a posteriori zapisanej w poisson_chains.
To ćwiczenie jest częścią kursu
Modelowanie bayesowskie z RJAGS
Instrukcje do ćwiczenia
- Dla każdej z 10 000 wartości
l_weekdaywpoisson_chainsużyj funkcjirpois(), aby przewidzieć natężenie ruchu w dzień powszedni z temperaturą 80 stopni. Zapisz wyniki jakoY_weekdaywpoisson_chains. - Użyj
ggplot(), aby stworzyć wykres gęstości dla predykcjiY_weekday. - Wyznacz przybliżone prawdopodobieństwo a posteriori, że natężenie ruchu w dzień powszedni z temperaturą 80 stopni wyniesie mniej niż 400 użytkowników.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Simulate weekday predictions under each parameter set
poisson_chains <- poisson_chains %>%
mutate(Y_weekday = rpois(n = ___, lambda = ___))
# Construct a density plot of the posterior weekday predictions
ggplot(___, aes(x = ___)) +
geom_density()
# Posterior probability that weekday volume is less 400
mean(___)