Calcularea predicțiilor posterioare
Tocmai ai explorat tendința posterioară a greutății \(Y\) în rândul adulților cu înălțimea \(X = 180\): \(m\)180 \(= a + b * 180\). Cadrul de date weight_chains conține 100.000 de valori plauzibile posterioare ale lui \(m\)180, calculate din valorile corespunzătoare ale lui \(a\) și \(b\):
> head(weight_chains, 2)
a b s iter m_180
1 -113.9029 1.072505 8.772007 1 79.14803
2 -115.0644 1.077914 8.986393 2 78.96014
Dincolo de tendință – dar dacă ai vrea să prezici greutatea unui adult specific cu înălțimea de 180 cm? Poți face asta! Pentru aceasta, trebuie să iei în calcul variabilitatea individuală față de tendință, modelată prin
\(Y\)180 \(\sim N(m\)180\(, s^2)\)
Using this model, you will simulate predictions of weight under each set of posterior plausible parameters in weight_chains.
Acest exercițiu face parte din cursul
Modelare bayesiană cu RJAGS
Instrucțiuni pentru exercițiu
- Folosește
rnorm()pentru a simula o singură predicție a greutății pe baza setului de parametri din primul rând al luiweight_chains. - Repetă operațiunea de mai sus folosind setul de parametri din al doilea rând al lui
weight_chains. - Simulează câte o predicție a greutății pentru fiecare dintre cele 100.000 de seturi de parametri din
weight_chains. Stochează rezultatele ca o nouă variabilăY_180înweight_chains. - Afișează primele 6 rânduri cu valorile parametrilor și predicțiile din
weight_chains.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Simulate 1 prediction under the first parameter set
rnorm(n = 1, mean = ___, sd = ___)
# Simulate 1 prediction under the second parameter set
rnorm(n = 1, mean = ___, sd = ___)
# Simulate & store 1 prediction under each parameter set
weight_chains <- weight_chains %>%
mutate(Y_180 = rnorm(n = 100000, mean = ___, sd = ___))
# Print the first 6 parameter sets & predictions