Výpočet posteriorních predikcí
Právě jsi prozkoumal/a posteriorní trend váhy \(Y\) u dospělých s výškou \(X = 180\): \(m\)180 \(= a + b * 180\). Datový rámec weight_chains obsahuje 100 000 posteriorně věrohodných hodnot \(m\)180, které jsi vypočítal/a z odpovídajících hodnot \(a\) a \(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
Zapomeň na trend – co kdybys chtěl/a předpovědět váhu konkrétního dospělého člověka s výškou 180 cm? To je možné! Musíš přitom zohlednit individuální variabilitu kolem trendu, kterou modeluje rozdělení
\(Y\)180 \(\sim N(m\)180\(, s^2)\)
S pomocí tohoto modelu budeš simulovat predikce váhy pro každou sadu posteriorně věrohodných parametrů v weight_chains.
Toto cvičení je součástí kurzu
Bayesovské modelování s RJAGS
Pokyny k cvičení
- Pomocí
rnorm()simuluj jedinou predikci váhy při hodnotách parametrů z prvního řádkuweight_chains. - Totéž zopakuj s hodnotami parametrů z druhého řádku
weight_chains. - Simuluj jedinou predikci váhy pro každou z 100 000 sad parametrů v
weight_chains. Výsledky ulož jako novou proměnnouY_180vweight_chains. - Vypiš prvních 6 řádků hodnot parametrů a predikcí z
weight_chains.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
# 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