The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

Running a subnational level single-country model

Load your library

library(mcmsupply)
set.seed(1209)

Load the data

cleaned_data <- get_data(national=FALSE, local=TRUE,
                         mycountry="Nepal")

Get the JAGS model inputs and the cleaned data

pkg_data <- get_modelinputs(startyear=1990, endyear=2025.5,
                            nsegments=12, raw_data = cleaned_data)

Run JAGS model and get posterior point estimates with uncertainty

For speed and illustration purposes, we will use 10 iterations, with no burn in period and taking every third sample. This leaves only 9 samples. We DO NOT recommend this setting. The recommended settings are 40000 iterations, with 10000 burn in period and taking every 15th sample. This is commented out and listed underneath the below R code.

mod <- run_jags_model(jagsdata = pkg_data, jagsparams = NULL,
                       n_iter = 10, n_burnin = 1, n_thin = 3)
                      # n_iter = 40000, n_burnin = 10000, n_thin = 15)

Check the model diagnostics

We use this to evaluate the convergence of the model parameters. We should expect to see R-hat values of approximately 1.05. The plot function will give you a visual summary for each parameter monitored.

sample_draws <- tidybayes::tidy_draws(mod$JAGS$BUGSoutput$sims.matrix)

var <- sample_draws %>% dplyr::select(.chain, .iteration, .draw,`P[1,2,1,1]`) %>%
  dplyr::mutate(chain = 1, # rep(1:mod$JAGS$BUGSoutput$n.chains, each=mod$JAGS$BUGSoutput$n.sims)),
                iteration = 3) # rep(1:mod$JAGS$BUGSoutput$n.sims, mod$JAGS$BUGSoutput$n.chains))

ggplot2::ggplot(data=var) +
  ggplot2::geom_line(ggplot2::aes(x=iteration, y=`P[1,2,1,1]`, color=as.factor(chain)))

Using the ggplot2 and tidybayes R packages, we will check the trace plots to assess the convergence of individual parameters. We expect to see a ‘caterpillar’ like appearance of the chains over the iterations.

head(mod$JAGS$BUGSoutput$summary)

Plot posterior point estimates with uncertainty

plots <- plot_estimates(jagsdata = pkg_data, model_output = mod)
plots[[1]]

Pull out estimates that you are particularly interested in

estimates_2018 <- pull_estimates(model_output = mod, country = 'Nepal', year=2018)

head(estimates_2018)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.