【问题标题】:Jupyter Notebook:未正确调用 DataFrame 构造函数! (ARIMA 模型)
【发布时间】:2022-01-23 13:47:18
【问题描述】:

我在使用 ARIMA 模型进行项目时遇到错误。

代码:

from statsmodels.tsa.arima.model import ARIMA 
model = ARIMA(train_data['count_log'], order=(2,1,0))
model_fit = model.fit()
output = model_fit.forecast(184) 
valid_data['AR'] = (pd.DataFrame(output[0])).values

错误:

ValueError Traceback (most recent call last)

    <ipython-input-36-5c6958629d0d> in <module>
          1 output = model_fit.forecast(184)
    ----> 2 valid_data['AR'] = (pd.DataFrame(output[0])).values
    
    ~\Anaconda3\lib\site-packages\pandas\core\frame.py in __init__(self, data, index, columns, dtype, copy)
        588         else:
        589             if index is None or columns is None:
    --> 590                 raise ValueError("DataFrame constructor not properly called!")
        591 
        592             if not dtype:
    
    ValueError: DataFrame constructor not properly called!

Python 版本 = 3.7.6

Statsmodel = 1.2.0(升级后)

另外,我升级了 Statsmodel 版本,但我仍然一次又一次地遇到同样的错误。

【问题讨论】:

  • pd.DataFrame(output[0])) 尝试使用单个值调用pd.DataFrame 的构造函数,这是无效的。你能解释一下你在这一行中试图做什么吗?
  • @cel 我正在比较 valid_data 中 AR 模型的结果(预测函数中的 184 个值)。这就是我使用 pd.Dataframe 进行比较的原因。

标签: python python-3.x jupyter-notebook arima


【解决方案1】:

从输出中删除 [0],如下所示:

(pd.DataFrame(output)).values

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-27
    • 2014-10-25
    • 2019-02-11
    • 2021-06-04
    • 2021-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多