LoslegenKostenlos loslegen

Posterior-Vorhersagen berechnen

Du hast gerade den posterioren Trend beim Gewicht \(Y\) von Erwachsenen mit einer Körpergröße \(X = 180\) untersucht: \(m\)180 \(= a + b * 180\). Der Data Frame weight_chains enthält 100.000 posterior plausiblen Werte von \(m\)180, die du aus den zugehörigen Werten von \(a\) und \(b\) berechnet hast:

> 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

Vergiss den Trend – was, wenn du das Gewicht einer ganz konkreten, 180 cm großen Person vorhersagen willst? Das geht! Dafür musst du die individuelle Abweichung vom Trend berücksichtigen, modelliert durch

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

Mit diesem Modell simulierst du Vorhersagen für das Gewicht unter jedem Satz posterior plausibler Parameter in weight_chains.

Diese Übung ist Teil des Kurses

Bayesianisches Modellieren mit RJAGS

Kurs anzeigen

Anleitung zur Übung

  • Verwende rnorm(), um eine einzelne Gewichts­vorhersage unter den Parametereinstellungen in der ersten Zeile von weight_chains zu simulieren.
  • Wiederhole das mit den Parametereinstellungen in der zweiten Zeile von weight_chains.
  • Simuliere eine einzelne Vorhersage des Gewichts unter jeder der 100.000 Parametereinstellungen in weight_chains. Speichere diese als neue Variable Y_180 in weight_chains.
  • Gib die ersten 6 Zeilen mit Parameterwerten und Vorhersagen in weight_chains aus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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
Code bearbeiten und ausführen