Trace plot delle catene di Markov
Un trace plot visualizza il comportamento longitudinale di una catena di Markov. In particolare, un trace plot per la catena di \(m\) mostra il valore osservato della catena (asse y) rispetto al numero di iterazione corrispondente (asse x).
Costruirai i trace plot della catena di \(m\) con due approcci: applicando la funzione plot() integrata all'oggetto mcmc.list sleep_sim e, per avere un controllo più fine su questo grafico (e nelle analisi dei capitoli successivi), applicando ggplot() all'oggetto data.frame sleep_chains. Sia sleep_sim sia sleep_chains sono nel tuo workspace:
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)
Questo esercizio fa parte del corso
Modeling bayesiano con RJAGS
Istruzioni dell'esercizio
Applica
plot()asleep_simcondensity = FALSEper costruire i trace plot per le catene \(m\) e \(s\). NOTA: Le 10.000Iterationsregistrate iniziano dopo un periodo di "burn-in" in cui i campioni vengono scartati. Quindi il conteggio delleIterationsnon parte da 1!Applica
ggplot()con un layergeom_line()asleep_chainsper ricostruire il trace plot della catena di \(m\).Fai uno zoom: costruisci un trace plot con
ggplot()delle prime 100 iterazioni della catena di \(m\).
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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()