我有一个代表每年违规的矢量。如何预测未来几年R的违规行为。
year <- c(190519, 223721, 235321, 101934)
请帮帮我
答案 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)
从图中可以看出,通过外推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)
预测不准确,并且由于数据点数量非常少而具有较大的误差范围。正如本答案开头和评论中所指出的,有用预测需要更多数据。出于同样的原因,这种方法无法预测超过一年。