Calculando previsões a posteriori
Você acabou de explorar a tendência a posteriori do peso \(Y\) entre adultos com altura \(X = 180\): \(m\)180 \(= a + b * 180\). O data frame weight_chains contém 100.000 valores plausíveis a posteriori de \(m\)180 que você calculou a partir dos valores correspondentes de \(a\) e \(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
Esqueça a tendência — e se você quisesse prever o peso de um adulto específico com 180 cm de altura? Dá para fazer! Para isso, você precisa considerar a variabilidade individual em relação à tendência, modelada por
\(Y\)180 \(\sim N(m\)180\(, s^2)\)
Usando esse modelo, você vai simular previsões de peso sob cada conjunto de parâmetros plausíveis a posteriori em weight_chains.
Este exercicio faz parte do curso
Modelagem Bayesiana com RJAGS
Instruções do exercicio
- Use
rnorm()para simular uma única previsão de peso sob as configurações de parâmetros da primeira linha deweight_chains. - Repita o passo acima usando as configurações de parâmetros da segunda linha de
weight_chains. - Simule uma única previsão de peso sob cada uma das 100.000 configurações de parâmetros em
weight_chains. Armazene-as como uma nova variávelY_180emweight_chains. - Imprima as primeiras 6 linhas dos valores de parâmetros e previsões em
weight_chains.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
# 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