通常、出力をプロットするにはさまざまな方法が考えられるため、モデルの出力をプロットするだけの関数はありません。
使用しているモデルの種類に関係なく、predict
関数を確認してください (たとえば、関数を使用した線形回帰lm
) predict.lm
。
次に、プロット システムを選択します (食事のレベルごとに異なるパネルが必要になる可能性が高いため、ggplot2 または格子のいずれかを使用します)。次に、プロットをどのように見せたいかを言葉でより明確に説明できるかどうかを確認します. 行き詰まった場合は、質問を更新してください。
これで、使用しているデータセットを特定できました。考えられるプロットは次のとおりです。
#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)
)