根据R中的给定数据预测下一个值

时间:2016-06-14 06:13:59

标签: r prediction forecasting

我有一个代表每年违规的矢量。如何预测未来几年R的违规行为。

year <- c(190519, 223721, 235321, 101934)

请帮帮我

2 个答案:

答案 0 :(得分:3)

为了说明akash87和Dominic Comtols所做的评论,用少量信息预测是徒劳的,这里有一个线性模型方法和ggplot可视化:

year<-c(190519 ,223721, 235321, 101934)
df <- data.frame(year=1:4, crime= year)
library(ggplot2)

ggplot(df, aes(x=year, y=crime)) + 
       geom_point() + 
       geom_smooth(method="lm", fullrange=T) + 
       xlim(1,6)

enter image description here

从图中可以看出,通过外推6年线性模型得出的预测值无论如何都可以在灰色区域内,即在-339737和537576之间。你只是猜测...

答案 1 :(得分:1)

数据集太小而无法进行可靠的预测,但您可以尝试以下方法,以说明原则上如何获得时间序列预测的可能性:

year <- c(190519, 223721, 235321, 101934)
library(forecast)
yearforecasts <- HoltWinters(as.ts(year), beta=FALSE, gamma=FALSE)
yearforecasts2 <- forecast.HoltWinters(yearforecasts,h=1)
> yearforecasts2
#  Point Forecast    Lo 80    Hi 80    Lo 95    Hi 95
#5       190518.3 95821.09 285215.5 45691.42 335345.2
plot.forecast(yearforecasts2)

enter image description here

预测不准确,并且由于数据点数量非常少而具有较大的误差范围。正如本答案开头和评论中所指出的,有用预测需要更多数据。出于同样的原因,这种方法无法预测超过一年。