我构建了一个混合模型,现在使用sjp.lmer
,针对每个预测变量绘制预测值。拟合模型的名称为mdl.lmer
,names.vec
是预测变量名称的向量。我想进行这样的循环,以使所有绘图都在一个pdf中出现
pdf("my.pdf")
for(i in seq_along(names.vec)){
clim <- names.vec[i]
sjp.lmer(mdl.lmer, type = "pred.fe", vars = clim, show.scatter = T)
ggsave(plot = last_plot())
}
问题是sjp.lmer线绘制了一个图,但是我无法将其分配给对象,然后将该对象打印到打开的设备上。通常我这样做:
pdf("my.pdf")
for(i in seq_along(names.vec)){
clim <- names.vec[i]
p <- ggplot(dat, aes(x = clim, y = response)) + geom_line()
print(p)
}
并且此命令将所有图保存在打开的pdf中。但是,对于混合模型,我无法实现。