如何在R中绘制lmer回归模型的估计值?

时间:2017-09-05 01:52:06

标签: r ggplot2 regression predict

我的数据如下:

originalRequest.data.user

我在R:

中运行一个带有set作为随机效果的lmer模型
originalRequest.data.sender.id

现在,我想绘制模型的估计值并绘制回归图,其中x轴为重量,y轴为高度,刻面(〜型)

我使用预测功能如下

height <- c(1,2,3,4,2,4,6,8)
weight <- c(12,13,14,15,22,23,24,25)
type <- c("Wheat","Wheat","Wheat","Wheat","Rice","Rice","Rice","Rice")
set <- c(1,1,1,1,2,2,2,2)
dat <- data.frame(set,type,height,weight)

我想要实现一个看起来像这样的ggplot:

mod <- lmer(weight~height + type + (1|set), data = dat)

但是,我注意到预测函数只有单数输出。我如何绘制以实现与上述相同?或者我是否必须存储两个不同的预测响应,然后将其插入ggplot的x,y?

1 个答案:

答案 0 :(得分:1)

我可以调整你的情节来显示这样的原始值和预测值:

ggplot(dat,aes(y = height)) +
    geom_point(aes(x = weight)) +
    geom_line(aes(x = pred)) + 
    facet_grid(~ type, scales = "free")

在您的示例图中,虽然您有weight,但是模型中的结果变量位于x轴上,这令人困惑。通常你会在y轴上得到结果/预测变量,所以我会绘制你的模型预测,如:

ggplot(dat,aes(x = height)) +
    geom_point(aes(y = weight)) +
    geom_line(aes(y = pred)) + 
    facet_grid(~ type, scales = "free")