TypeError: predicting () отсутствует 1 обязательный позиционный аргумент: 'params' при прогнозировании значений в модели ARMAX - PullRequest
1 голос
/ 11 июля 2020

Это мой код, в котором я устанавливаю модель

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'

1 Ответ

0 голосов
/ 13 июля 2020

Вы можете использовать results_armax.predict вместо model_armax.predict. Функция прогнозирования модели ARMA требует, чтобы вы указали параметры. Функция прогнозирования результатов подобранной модели ARMA уже имеет соответствующие параметры.

См. Разницу аргументов в документации:

...