将预测输出添加到原始数据帧

时间:2018-12-04 18:59:56

标签: r predict

我有一个包含两列的数据框-年和入场计数。我有以下代码来预测未来的数字(未来5年) (数据框中的最后一年是1983年)

df = read.table("C:AdmCounts.txt",header=TRUE)
colnames(df)[1] <- "Year" 
str(df)
model <- lm(AdmCount ~ Year, df)
new.df <- data.frame(Year=c(1985, 1986, 1987, 1988, 1989))
p = predict(model, new.df)

输出为

       1        2        3        4        5 
62.64909 62.74266 62.83623 62.92980 63.02337

如何将以上输出添加回原始数据框中以绘制图形?输出中的1是1985年,2是1986年,依此类推。

谢谢。

1 个答案:

答案 0 :(得分:0)

您未指定AdmCount,因此可以自由选择最简单的选项:

df <- data.frame(
  Year = 1985:1989,
  AdmCount = 1:5
)

model <- lm(AdmCount ~ Year, df)
predictDf <- data.frame(Year = 1990:1995)
predictDf$Prediction <- predict(model, predictDf)

上面的代码将创建一个data.frame predictDf,该数据帧将具有2列-Year包含要预测的年份,Prediction包含预测值。