我正在尝试检索ARIMA模型的样本外预测但是,我经常收到错误,我不确定现在该如何继续:(代码如下:
from statsmodels.tsa.arima_model import ARIMA
fit = ARIMA(endog, (1,1,1)).fit()
params = fit.params
forecast = fit.predict(params.all(), start='2015-9-21', end='2016-9-21', typ='levels')
当我只使用时,它工作得很好(即给我一个结果,但不是一个样本外的结果……)
forecast = fit.predict(params.all(), typ='levels')
但是,当我添加“开始”和“结束”日期(或者只添加“开始”)时,它不想工作,我经常出错。对于第一个引用的代码块,它的“TypeError:predict()为关键字参数“start”获取了多个值。我也试过使用datetime类型,但它也不起作用。有人能帮我吗?
最佳答案
我得到了一个类似于上面报告的错误:"AttributeError: 'NoneType' object has no attribute 'get_loc' "
但我意识到这是因为我传递的数组(或列表)没有日期时间索引,例如,如果使用pandas dataframes并将其输入为df.values
,则会删除时间索引,而ARMA没有触发此错误的日期信息(因此dates不是)。我建议您输入带有日期时间索引的pd.DataFrame
或pd.Series
对象。另请参见此线程http://pystatsmodels.narkive.com/rhX3T509/arma-predict-throws-attributeerror-with-start-and-end-dates
关于python - Python中的Statsmodels软件包-检索ARIMA模型的样本外预测的问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32744940/