python ARIMA时间序列分析之forecast 、predict and get_prediction

ARIMA forecast 、predict and get_prediction

被forecast与predict困扰一段时间,网络上众说纷纭。

这次做数据处理,对比得到如下粗略结论,没有讨论参数的使用细节(可参看帮助文档):
版本:statsmodels 0.13.1

forecast 参数steps,表示预报多少个时间点(fit样本数据后)。
eg:
x=[1,2,3,4,5,6]

model.fit(x,y)
model.forecast(5),在fit数据序列后(样本外),forecast5个点(x为7,8,9,10,11)y的值。

predict 参数(start,end) ,start起始时间点,end结束时间点。
起始、结束都没有限制(in sample与out of sample 均可),end大于start。
样本内的为拟合值,样本外为预测。

如果只给一个int值,缺省认为:
大于fit样本的最后时间点,预测这个时刻的值。
小于fit样本的最后时间点,predict当前值到fit样本的最后时间点。

eg:
x=[1,2,3,4,5,6]

model.fit(x,y)
model.predict(2) #predict x等于2,3,4,5,6的y
model.predict(7) #forecast x等于7的y

get_prediction 基本同 predict
但返回的值不一样。要查看预测结果需要使用
.predicted_mean属性

eg:
x=[1,2,3,4,5,6]

model.fit(x,y)
result=model.get_prediction(2)
result.predicted_mean #返回预测结果

你可能感兴趣的:(时间序列分析,python,机器学习)