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
Oefeninstructies
Pas
plot()toe opsleep_simmetdensity = FALSEom traceplots voor de \(m\)- en \(s\)-ketens te maken. LET OP: De 10.000 vastgelegdeIterationsstarten na een "burn-in"-periode waarin steekproeven zijn weggegooid. Daarom begint de telling vanIterationsniet bij 1!Pas
ggplot()met eengeom_line()-laag toe opsleep_chainsom 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()