1

这是我拟合模型的代码

model_armax = ARIMA(df.productivity, exog = df[['calories_burnt', 'fat_level', 'distance_walked', 'steps',
                                                   'weight', 'water', 'time_to_bed', 'wakeup_time', 'bedtime',
                                                   'asleep', 'sleep_periods', 'sports_total_time', 'food_quality',
                                                   'food_quantity', 'alcohol', 'energy', 'meditation',
                                                   'mood', 'stress', 'soreness', 'fitness', 'engagement',
                                                   'exploration']], order = (3,0,3))
results_armax = model_armax.fit(disp = 0)

这是预测/预测未来趋势的代码

df_armax_forecast = model_armax.predict(start = '2020-02-22', end = '2020-07-01', 
                                          exog = df_test[['calories_burnt', 'fat_level', 'distance_walked', 'steps',
                                                          'weight', 'water', 'time_to_bed', 'wakeup_time', 'bedtime',
                                                          'asleep', 'sleep_periods', 'sports_total_time', 'food_quality',
                                                          'food_quantity', 'alcohol', 'energy', 'meditation',
                                                          'mood', 'stress', 'soreness', 'fitness', 'engagement',
                                                          'exploration']])

这是错误跟踪

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-177-dc09c88b9c6f> in <module>
      5                                                           'food_quantity', 'alcohol', 'energy', 'meditation',
      6                                                           'mood', 'stress', 'soreness', 'fitness', 'engagement',
----> 7                                                           'exploration']])

TypeError: predict() missing 1 required positional argument: 'params'
4

1 回答 1

1

你应该使用results_armax.predict而不是model_armax.predict. ARMA 模型的预测功能要求您说出参数。拟合的 ARMA 模型结果的预测函数已经拟合了参数。

请参阅文档中的参数差异:

于 2020-07-13T18:52:47.077 回答