ПочатиПочніть безкоштовно

Обчислення апостеріорних прогнозів

Ви щойно дослідили апостеріорну тенденцію ваги \(Y\) серед дорослих із зростом \(X = 180\): \(m\)180 \(= a + b * 180\). У датафреймі weight_chains міститься 100 000 апостеріорно правдоподібних значень \(m\)180, які ви обчислили з відповідних значень \(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

Залишімо тенденцію — а що, як ви хочете передбачити вагу конкретної дорослої людини зі зростом 180 см? Це можливо! Для цього потрібно врахувати індивідуальні відхилення від тенденції, змодельовані як

\(Y\)180 \(\sim N(m\)180\(, s^2)\)

Використовуючи цю модель, ви зімітуєте прогнози ваги для кожного набору апостеріорно правдоподібних параметрів у weight_chains.

Ця вправа є частиною курсу

Баєсівське моделювання з RJAGS

Переглянути курс

Інструкції до вправи

  • Використайте rnorm(), щоб змоделювати один прогноз ваги за налаштувань параметрів у першому рядку weight_chains.
  • Повторіть те саме, використовуючи налаштування параметрів у другому рядку weight_chains.
  • Змоделюйте один прогноз ваги для кожного з 100 000 наборів параметрів у weight_chains. Збережіть їх як нову змінну Y_180 у weight_chains.
  • Виведіть перші 6 рядків значень параметрів і прогнозів у weight_chains.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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
Редагувати та запускати код