# Library library(R2jags) # Read in data app <- read.csv(paste0(getwd(), "/appendix.csv"), header = T) # Write the model in BUGS Language as a function lm1_jags = function() { # Likelihood for(i in 1:n) { betas[i] ~ dnorm(mu[i], tau.obs[i]) tau.obs[i] <- pow(se[i], -2) mu[i] ~ dnorm(mu.int[fg[i]], tau.species) } # Priors # - Beta estimates across each FG for(f in 1:7) { mu.int[f] ~ dnorm(0, 0.0001) } # - Error associated with beta estimates across each FG sd.species ~ dunif(0, 100) tau.species <- pow(sd.species, -2) } # Specify inital values init_values <- function() { list(mu.int = rnorm(7,1)) } # Names of parameters to save params = "mu.int" # Bundle the data # Agricultural data (beta 4) test_data_agric <- list( 'betas' = app$Paagric, 'se' = app$Paagric_SE, 'fg' = as.numeric(app$FG), 'n' = dim(app)[1] ) # Urban data test_data_urban <- list( 'betas' = app$Paurban, 'se' = app$Paurban_SE, 'fg' = as.numeric(app$FG), 'n' = dim(app)[1] ) # Fit the models # Agricultural land use meta-analysis fit_lm1_agric <- jags(data = test_data_agric, parameters.to.save = params, model.file = lm1_jags, n.chains = 3, n.iter = 50000, n.burnin = 25000, n.thin = 10, DIC = F ) # Urban land use meta-analysis fit_lm1_urban <- jags(data = test_data_urban, parameters.to.save = params, model.file = lm1_jags, n.chains = 3, n.iter = 50000, n.burnin = 25000, n.thin = 10, DIC = F )