【发布时间】:2018-07-03 09:24:56
【问题描述】:
因此,我在一个小型销售数据集上运行了一个时间序列模型,并预测了接下来 12 个时期的销售额。使用以下代码:
mod1=ARIMA(df1, order=(2,1,1)).fit(disp=0,transparams=True)
y_future=mod1.forecast(steps=12)[0]
其中 df1 包含以月份为索引的销售额值。现在我按以下方式存储预测值:
pred.append(y_future)
现在,我需要将预测值附加到原始数据集 df1,最好使用相同的索引。我正在尝试使用以下代码:
df1.append(pred, ignore_index=False)
但我收到以下错误:
TypeError: cannot concatenate a non-NDFrame object
我尝试将 pred 变量转换为列表然后追加,但无济于事。 任何帮助将不胜感激。谢谢。
【问题讨论】:
-
这里的问题似乎是您的 pred 不是 df 类型,而可能是 list 类型。您需要做的是将 pred 转换为数据框。像这样
new_pred = pd.DataFrame(pred) -
是否要将其附加到数据框中的新列?
-
@Pratik Kumar,不,我想将其作为行附加到现有数据框。
-
@Imre_G,谢谢我已经尝试过了,但它没有被附加为行。
-
df['predictions'] = pred怎么样?
标签: python arrays pandas dataframe sklearn-pandas