【问题标题】:When using a ARIMA in python, and have a garde of integration how do you get the forecast to be not integrated?在 python 中使用 ARIMA 并进行集成时,如何使预测未集成?
【发布时间】:2020-04-21 10:49:30
【问题描述】:

所以我使用的是 ARIMA(2,1,1)

 model = ARIMA(value, order=(2, 1, 1))
 results = model.fit()
 model_fit = model.fit()

 predict=model_fit.predict(start=1, end=120, exog=None)
 data = pd.DataFrame(data = predict)
 print(data)

 results.plot_predict(95,115)

打印的数据有积分等级我怎么知道我的值是实际值?

实际值显示在 18000 附近 我得到 -201、75 或类似的值,如果我将 ARIMA 更改为 ARIMA(2,0,1),我会得到正常值。

谁能帮帮我?

【问题讨论】:

  • 您是否通过执行各种测试以确定趋势和季节性来检查您的数据是否平稳?
  • 是的,实际上我使用了我创建的一个函数来确定哪个是最好的 ARIMA,在这种情况下它是 (2,1,1)
  • 我建议你经常检查是否有趋势/季节性,并进行一些变换使其平稳并确定 p,d,q。您创建来确定的功能只会给您一个粗略的想法。
  • Okey 我明白你想说什么,因此感谢您的帮助。但是无论我是否有趋势并且我的系列不是静止的,我都需要 d=1,2..etc。那我的问题还是一样。但也再次非常感谢您

标签: python time-series forecasting arima


【解决方案1】:

当具有不同的时间序列并且您希望输出无差异时。

 predict=model_fit.predict(start=1, end=120, exog=None, typ ='levels' )

这应该可以解决问题

typ = 'levels'

将差分数据转换为非差分数据

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-07
    相关资源
    最近更新 更多