Skip to content

Instantly share code, notes, and snippets.

@bbolker
Created December 13, 2022 22:32
Show Gist options
  • Select an option

  • Save bbolker/e6694fef9cdc1e509379faed5b5dc39d to your computer and use it in GitHub Desktop.

Select an option

Save bbolker/e6694fef9cdc1e509379faed5b5dc39d to your computer and use it in GitHub Desktop.
plotting sjPlots in a grid
library(lme4)
library(sjPlot)
set.seed(101)
n <- 1e3 ## obs per group
ns <- 4 ## groups
dd <- data.frame(s = rep(1:ns, each= n),
f = factor(sample(1:20, size = n*ns, replace = TRUE)),
x = rnorm(n*ns))
sims <- lapply(1:ns,
function(i) simulate(~x + (1|f),
family = poisson,
newdata = subset(dd, s==i),
newparams = list(beta = c(1,1), theta = 1))[[1]])
dd$y <- unlist(sims)
fits <- lapply(1:ns,
function(i) glmer(y~x+(1|f),
family = poisson,
data = subset(dd, s==i)))
plots <- lapply(fits, function(f) plot_model(f, type = "pred")$x)
cowplot::plot_grid(plotlist = plots)
@strengejacke
Copy link

You can still use parameters::compare_parameters(fits) to get the raw data, but then probably need to build the plot from scratch.

@drfeinberg
Copy link

Thank you so much for all your help here!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment