1 创建时间序列
2 季节性分解
3 指数模型
4 ARIMA模型
5 自动预测
第一步:创建时间序列
用ts()函数将一个数字向量转化为一个时间序列,形式为
ts(vector,start=,end=,frequency=),frequency=(1=annual,4=quartly,12=monthly,etc)
第二部:季节性分解
如果时间序列有增加的趋势,季节性,和不规则成分,则可以用stl()函数,如果时间序列多重影响可以用log(ts)
#季节分解 fit=stl(ts,s.window="period") plot(fit) #添加图 monthplot(ts)
library(forest) seasonplt(ts)
第三步:指数模型
#简单指数平滑模型 fit=HoltWinters(ts,beta=F,gamma=F) #带有models level and trend
fit=HoltWinters(ts,beta=F)#带有models levels,trend and seasonal compontents
fit=HoltWinters(ts)#predict accuracy library(forecast) accuracy(fit) #predict
next three future values library(forecast) forecast(fit,3) plot(forecast(fit,3))
今日推荐