Aan de slagGa gratis aan de slag

Traceplots van Markov-ketens

Een traceplot visualiseert het longitudinale gedrag van een Markov-keten. Concreet zet een traceplot voor de \(m\)-keten de geobserveerde ketenwaarde (y-as) uit tegen het bijbehorende iteratienummer (x-as).

Je gaat traceplots van de \(m\)-keten maken op twee manieren: door de ingebouwde functie plot() toe te passen op het mcmc.list-object sleep_sim en, voor meer controle over deze grafiek (en later over analyses), door ggplot() toe te passen op het data.frame-object sleep_chains. Zowel sleep_sim als sleep_chains staan al in je werkruimte:

sleep_sim <- coda.samples(model = sleep_jags, variable.names = c("m", "s"), n.iter = 10000)
sleep_chains <- data.frame(sleep_sim[[1]], iter = 1:10000)

Deze oefening maakt deel uit van de cursus

Bayesiaans modelleren met RJAGS

Cursus bekijken

Oefeninstructies

  • Pas plot() toe op sleep_sim met density = FALSE om traceplots voor de \(m\)- en \(s\)-ketens te maken. LET OP: De 10.000 vastgelegde Iterations starten na een "burn-in"-periode waarin steekproeven zijn weggegooid. Daarom begint de telling van Iterations niet bij 1!

  • Pas ggplot() met een geom_line()-laag toe op sleep_chains om de traceplot van de \(m\)-keten opnieuw te maken.

  • Zoom in: maak een ggplot()-traceplot van de eerste 100 iteraties van de \(m\)-keten.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Use plot() to construct trace plots of the m and s chains


# Use ggplot() to construct a trace plot of the m chain
ggplot(___, aes(x = ___, y = ___)) + 
    geom_line()

# Trace plot the first 100 iterations of the m chain
ggplot(___, aes(x = ___, y = ___)) + 
    geom_line()
Code bewerken en uitvoeren