我正在尝试使用 R 进行一些建模,我已经开始使用 BodyWeight 库,因为我在网上看到了一些示例。只是为了理解和习惯命令。
我已经得出了我的最终模型,带有估计值,我想知道如何绘制这些估计值,但我没有在网上看到任何东西..
有没有办法用一条线绘制估计值,并为每个观察值绘制点?
我在哪里可以找到有关如何执行此操作的信息,我是否必须自己提取值,或者可以说绘制这些模型的估计值?
我只是从 R 开始。欢迎任何帮助。
谢谢
没有仅绘制模型输出的函数,因为通常有许多不同的可能方式来绘制输出。
查看predict
您使用的任何模型类型的函数(例如,使用函数的线性回归lm
)predict.lm
。
然后选择一个绘图系统(对于不同的饮食水平,您可能需要不同的面板,所以使用 ggplot2 或 lattice)。然后看看你是否可以用文字更清楚地描述你想要情节的样子。如果遇到困难,请更新您的问题。
现在我们已经确定了您使用的数据集,这是一个可能的图:
#Run your model
model <- lme(weight ~ Time + Diet, BodyWeight, ~ 1 | Rat)
summary(model)
#Predict the values
#predict.lme is a pain because you have to specify which rat
#you are interested in, but we don't want that
#manually predicting things instead
times <- seq.int(0, 65, 0.1)
mcf <- model$coefficients$fixed
predicted <-
mcf["(Intercept)"] +
rep.int(mcf["Time"] * times, nlevels(BodyWeight$Diet)) +
rep(c(0, mcf["Diet2"], mcf["Diet3"]), each = length(times))
prediction_data <- data.frame(
weight = predicted,
Time = rep.int(times, nlevels(BodyWeight$Diet)),
Diet = rep(levels(BodyWeight$Diet), each = length(times))
)
#Draw the plot (using ggplot2)
(p <- ggplot(BodyWeight, aes(Time, weight, colour = Diet)) +
geom_point() +
geom_line(data = prediction_data)
)