Calcular predicciones a posteriori
Acabas de explorar la tendencia a posteriori del peso \(Y\) entre personas adultas con altura \(X = 180\): \(m\)180 \(= a + b * 180\). El data frame weight_chains contiene 100.000 valores plausibles a posteriori de \(m\)180 que calculaste a partir de los valores correspondientes de \(a\) y \(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
Olvida la tendencia: ¿y si quisieras predecir el peso de una persona concreta que mide 180 cm? ¡Puedes hacerlo! Para ello, debes tener en cuenta la variabilidad individual respecto a la tendencia, modelizada por
\(Y\)180 \(\sim N(m\)180\(, s^2)\)
Con este modelo, simularás predicciones de peso bajo cada conjunto de parámetros plausibles a posteriori en weight_chains.
Este ejercicio forma parte del curso
Modelado bayesiano con RJAGS
Instrucciones del ejercicio
- Usa
rnorm()para simular una única predicción de peso con los parámetros de la primera fila deweight_chains. - Repite lo anterior usando los parámetros de la segunda fila de
weight_chains. - Simula una única predicción de peso bajo cada uno de los 100.000 conjuntos de parámetros en
weight_chains. Guarda estas predicciones como una nueva variableY_180enweight_chains. - Imprime las 6 primeras filas con los valores de parámetros y las predicciones en
weight_chains.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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