将两个模型的 ranef 图与 grid.arrange() 结合的问题
Problem combining ranef plots of two models with grid.arrange()
我有两个 LME:
lme1 <- lmer(F1 ~ (phoneme|individual) + (1|word) + frequency,
data = nurse_female)
lme2 <- lmer(F2 ~ (phoneme|individual) + (1|word) +
frequency + age + (1|zduration),
data = nurse_female)
我创建了随机效应的简单点图 dotplot(ranef(lme1))
,它为每个随机预测变量创建了一个图。然而,我只对 phoneme|individual
感兴趣,它看起来像这样:
通常我会使用 grid.arrange() 但我不能只 select 音素 | 个别情节。你知道这样做的方法吗?
(一个可重现的例子会很有用,我希望这个例子做你想要的......)。我认为这里的关键是要认识到 dotplot.ranef.mer
方法 returns 一个 list of plots:
library(lme4)
fm1 <- lmer(angle ~ (1|recipe) + (1|recipe:replicate), cake, REML= FALSE)
dd <- dotplot(ranef(fm1))
length(dd) ## 2
它们不一定与公式中的顺序相同:
names(dd) ## [1] "recipe:replicate" "recipe"
print(dd[["recipe"]])
print(dd[["recipe:replicate"]])
所以你会想要像
这样的东西
f <- function(m) dotplot(ranef(m))[["individual"]]
gridExtra::grid.arrange(f(lme1),f(lme2))
我有两个 LME:
lme1 <- lmer(F1 ~ (phoneme|individual) + (1|word) + frequency,
data = nurse_female)
lme2 <- lmer(F2 ~ (phoneme|individual) + (1|word) +
frequency + age + (1|zduration),
data = nurse_female)
我创建了随机效应的简单点图 dotplot(ranef(lme1))
,它为每个随机预测变量创建了一个图。然而,我只对 phoneme|individual
感兴趣,它看起来像这样:
通常我会使用 grid.arrange() 但我不能只 select 音素 | 个别情节。你知道这样做的方法吗?
(一个可重现的例子会很有用,我希望这个例子做你想要的......)。我认为这里的关键是要认识到 dotplot.ranef.mer
方法 returns 一个 list of plots:
library(lme4)
fm1 <- lmer(angle ~ (1|recipe) + (1|recipe:replicate), cake, REML= FALSE)
dd <- dotplot(ranef(fm1))
length(dd) ## 2
它们不一定与公式中的顺序相同:
names(dd) ## [1] "recipe:replicate" "recipe"
print(dd[["recipe"]])
print(dd[["recipe:replicate"]])
所以你会想要像
这样的东西f <- function(m) dotplot(ranef(m))[["individual"]]
gridExtra::grid.arrange(f(lme1),f(lme2))